在linux系统上使用sh脚本 通过脚本telnet到另外一台AIX的服务器上去执行一段命令并将结
发布网友
发布时间:2022-04-23 18:13
我来回答
共1个回答
热心网友
时间:2023-10-12 12:17
大致思路是要用到expect工具,我理解aix上执行的一段命令是要放到后台
#!/bin/bash
/usr/bin/expect <<END
spawn telnet IP #IP是AIX的地址
expect "*login:"
send "user\r" #user是登录用户
expect "*assword:"
send "pass\r" #pass是用户登录口令
expect "*#" #我假设是root登录,其shell提示符以#结尾
send "command >/tmp/a.txt &\r" #command是要后台执行的一段命令,注意有&符号
expect "*#"
send "while true; do flag=$(cat /tmp/a.txt); if [ \"$flag\" = \"1\" ];then break; fi; sleep 300; done\r"
expect "*#"
send "exit\r"
expect eof
END
touch /tmp/final
上面是实现此效果的大致代码,没有测试过,可能会有些小问题,大致思路如此,希望对你有帮助。