码迷,mamicode.com
首页 > 其他好文 > 详细

expect 批量修改密码(无密码ssh登入就不要用这个了)

时间:2014-09-11 19:33:52      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:expect 批量修改密码

#!/bin/bash

for ip in `cat iplist.txt`

do

pwd=`mkpasswd -l 12 -s 0 -C 0`

grep -q $ip /root/pwd.log&&passwd=$(grep $ip /root/pwd.log|cut -d: -f2)||passwd=123456

expect -c "

        spawn ssh root@$ip  passwd

        expect {

                        \"*yes/no*\" { send \"yes\r\";exp_continue }

                        \"*password*\" { send \"$passwd\r\"; }

                        }

        expect { 

                \"*New password:\"  { send \"$pwd\r\";exp_continue } 

                \"Retype new password:\" { send \"$pwd\r\";exp_continue } 

                \"*#\" { send \"exit\r\"; }

        }

"

[[ -f /root/pwd.log ]]&&sed -i "/^$ip/d" /root/pwd.log

echo "$ip:$pwd" >>/root/pwd.log

done

其中passwd=123456是初始密码

新密码放在/root/pwd.log里面

ip列表放在脚本目录下的iplist.txt里面

本文出自 “linux开源-不断的总结....” 博客,请务必保留此出处http://fantefei.blog.51cto.com/2229719/1551265

expect 批量修改密码(无密码ssh登入就不要用这个了)

标签:expect 批量修改密码

原文地址:http://fantefei.blog.51cto.com/2229719/1551265

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!