批量修改用户密码---shell

批量修改用户密码

#!/usr/bin/env bash

rpm -qa |grep expect
if [ $? -ne 0 ];then
    yum -y install expect
fi

/usr/bin/expect<<EOF

set timeout 30

spawn   ssh-keygen

expect     {

    ".ssh/id_rsa)"       { send    "\n";  exp_continue }
    "Overwrite (y/n)?"   { send    "y\n"; exp_continue }
    "no passphrase):"    { send    "\n";  exp_continue }
    "again:"             { send    "\n";  exp_continue }
}
EOF


for i in $(cat ip.txt)
do
    read -p "请输入${i}的密码:" pwd
    /usr/bin/expect <<EOF
    set timeout 30

    # 发送公钥给对方服务器
    spawn ssh-copy-id root@$i
    expect {
    "yes/no" { send "yes\n"; exp_continue }
    "password:" { send "${pwd}\n"; exp_continue }
    }
expect eof
EOF
    ping -c1 $i &>/dev/null
    if [ $? -eq 0 ];then
        read -p "请输入新密码:" password
        ssh root@$i "echo $password | passwd --stdin root"
        if [[ $? -eq 0 ]];then
            echo "$i" >> ip_ok.txt
        else
            echo "${i}修改失败" >> ip_file.txt
        fi
    else
        echo "${i}不通畅" >> ip_file.txt
    fi
done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值