安装 expect 工具
yum install expect -y
创建expect配置文件
cat > expect.sh << "EOF"
#!/usr/bin/expect
set host [lindex $argv 0]
set passwd "123456" #替换自己服务器的密码
set cm [lindex $argv 1]
spawn ssh root@$host
expect {
"yes/no" { send "yes\r"}
"password:" { send "$passwd\r" }
}
expect "]*"
send "$cm\r"
expect "]*"
send "exit\r"
EOF
添加执行权限
chmod +x expect.sh
创建需要远程操作的机器IP 列表
cat > ip_list.txt << "EOF"
192.168.0.1
192.168.0.2
192.168.0.3
192.168.0.4
EOF
创建 exec.sh 脚本
#!/bin/bash
for IP in `cat ip_list.txt`
do
echo $IP
./expect.sh $IP "free -m;ls /tmp" #这里填写需要执行的命令,如 free -m 和ls 命令
done