linux shell 嵌套expect 与服务器交互脚本

咱们与服务器进行交互是该用expect 脚本的,用 “/usr/bin/expect <<-EOF” 来开启expect 脚本java

用spawn 来开启一个新的进程 expect 来接受命令,send来发送交互命令 结束用 EOF来over expect脚本git

废话很少说直接上脚本,注释已经很清晰了:bash

#!/bin/bash

# 进入项目目录 将项目打包
cd /home/kfh/git/JusSpiderV2.0/
mvn install
cd /home/kfh/git/JusSpiderV2.0/target

# 嵌套expect脚本与服务器进行交互
/usr/bin/expect <<-EOF
# 将项目scp到服务器上
spawn scp jusspider-1.0-RELEASE.tar.gz root@192.168.15.45:~  
set timeout 30
expect {
"*password:" { send "*********\r"}
}
# 等expect 出现100% 而后进行下面的操做
expect 100%
expect eof ;
# ssh 新开启一个spawn 登陆服务器
spawn ssh root@192.168.15.45
expect "*password:"
send "911GongGexy\r"

#mv tar to yunnan
expect "*#"
send "mv -f jusspider-1.0-RELEASE.tar.gz /usr/java/gongshang/yunnan/\r"

# 进入tar.gz所在目录 将其解压
send "cd /usr/java/gongshang/yunnan/\r"
send "rm -rf jusspider-1.0-RELEASE\r"
send "ls\r"
send "tar zxvf jusspider-1.0-RELEASE.tar.gz\r"
send "exit\r"
expect eof
EOF
相关文章
相关标签/搜索