首页 > 其他 > 详细

expect脚本自动化执行线上服务器命令

时间:2016-12-30 22:24:40      阅读:203      评论:0      收藏:0      [点我收藏+]


这个expect脚本是为了获取线上服务器的容量大小,并无实际意义


#!/usr/bin/expect

set timeout 60       #设置超时

set user [lindex $argv 0]    #设置第一个参数

set password [lindex $argv 1]

set ipaddr [lindex $argv 2]
set port [lindex $argv 3]

set mypassword [lindex $argv 4]

spawn ssh $user@$ipaddr -p $port    #远程连接ssh
expect {
    "(yes/no)" { send "yes\r"; exp_continue }
    "password:" { send "$password\r" }
}

expect $user@*  {send " df -h > $ipaddr.disk.rocky \r" }  ;
expect $user@*  {send " df -ih >> $ipaddr.disk.rocky \r"}


#expect $user@*  {send " scp -P 8026 *.rocky rockycai@180.173.150.12:/home/rockycai/ip_file/$ipaddr/ \r" }  ;
#expect {
#    "(yes/no)" { send "yes\r"; exp_continue }
#    "password:" { send "$mypassword\r" }
#}

expect $user@*  {send " rm -rf *.rocky \r"}
expect $user@*  {send " exit \r" } ;

#spawn /home/rockycai/ssh/autoDemo.sh $ipaddr

expect eof ;


可以根据实际情况来更改需求

expect脚本自动化执行线上服务器命令

原文:http://rockycai.blog.51cto.com/8871643/1887682

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!