linux(十)—shell 使用 bash和expect 配合使用案例
1:通过xxx.sh 脚本 在多台机器上 创建一个目录 /home/testlu2:脚本内容如下#!/bin/env bash# Author:lvdqiang# Desc:使用shell 脚本远程给一个文件中的IP和密码的机器创建目录 /home/testlu# Using:执行:chmod +x /home/shell/test07.sh执行:/home/shell/test07.sh# Up
·
1:通过xxx.sh 脚本 在多台机器上 创建一个目录 /home/testlu
2:脚本内容如下
#!/bin/env bash
# Author:lvdqiang
# Desc:使用shell 脚本远程给一个文件中的IP和密码的机器创建目录 /home/testlu
# Using:执行:chmod +x /home/shell/test07.sh 执行:/home/shell/test07.sh
# Update:2021-11-12 22:01
while read ip pass
do
# 标准的开启expect的脚本执行开始
/usr/bin/expect <<-END &>/dev/null
# 开启连接 远程服务器$ip
spawn ssh root@$ip
# 检测需要输入的内容
expect {
"yes/no" { send "yes\r";exp_continue }
"password:" {send "$pass\r" }
}
expect "#"
send "mkdir -p /home/testlu\r"
send "touch /home/testlu/file{1..3}.txt\r"
expect eof
# 注意END 不能有空格 否则报语法错误
END
done < /home/shell/ipInfo.txt
exit
在vi /home/shell/test07.sh
将 上面代码复制到test07.sh中
执行授权 chmod +x /home/shell/test07.sh
执行 /home/shell/test07.sh 即可看到图下图所示结果 在192.168.195.13 机器中写入3个文件
执行结果如图所示:

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)