您的位置:首页 > 其它

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

2016-12-30 15:08 232 查看
这个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 脚本操作
相关文章推荐