- 论坛徽章:
- 0
|
#重启JBOSS
#!/bin/bash
passwd=jbossxx
for i in 22.188.150.149 22.188.37.47 22.188.150.148 22.188.37.46
do
/usr/bin/expect << EOF
set timeout 100
spawn ssh -l jboss $i
wangshangbaijil.blog.com
expect {
"*yes/no" { send "yes\r";exp_continue }
"*password:" { send "$jboss_passwd\r" }
}
expect "]" { send "cdb\r" }
expect "]" { send "./jboss-manager.sh stop\r" }
expect "]" { send "sleep 3\r" }
expect "]" { send "./jboss-manager.sh start\r" }
expect "]" { send "exit\r" }
expect eof
EOF
done
现在问题在于我全部是以匹配这4个IP的终端提示符为]来执行命令,但是每个系统的终端提示符可能是$或者#或者干脆没有这种符号,
我该如何去判断提示符然后传送给expect 捕捉呢? |
|