批量ssh操作

简单操作如下

expect echohostname.sh

cat echohostname.sh 
#########################################################################
# File Name: echohostname.sh
# Author: dty
# mail: 576786031@qq.com
# Created Time: Mon 27 Jul 2015 12:50:18 PM CST
#########################################################################
#!/usr/bin/expect
foreach ip { //括号前后注意空格!!!!!!!!!!
172.25.254.4
172.25.254.5
172.25.254.6
} {
spawn ssh  root@$ip
expect "*password"
sleep 2   //没这延迟就犯2!!!!!
send "redhat\r"
expect "root"
send "echo `hostname` > /var/www/html/index.html\r"
expect eof
}

如果你之前没有连过ssh那么还会出现yes/no

这个时候采用下面这个脚本即可

  7 #!/usr/bin/expect
  8 foreach ip {
  9 172.25.254.4
 10 172.25.254.5
 11 172.25.254.6
 12 } {
 13 spawn ssh  root@$ip
 14 expect "(yes/no)" {
 15 send "yes\r"
 16 expect "password"
 17 sleep 2
 18 send "redhat\r"
 19 }  "*password"
 20 sleep 2
 21 send "redhat\r"
 22 expect "root"
 23 send "echo `hostname` > /var/www/html/index.html\r"
 24 expect "#" 
 25 send "logout\r"
 26 expect eof
 27 }

下面这个测试比较稳定相信还可以做优化,初学

转载于:https://my.oschina.net/loveleaf/blog/484153

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值