当我运行下面的脚本时,它会连接服务器,但在发送命令之前它会断开连接。我该如何解决这个问题。
#!/bin/bash
/usr/bin/expect << EOD
spawn telnet 31.168.109.31
sleep 2
expect ">"
sleep 1
send "my_password"
send "\n"
sleep 1
interact
答案 0 :(得分:0)
根据您的代码,您希望在密码之前>
。我没有告诉你它的目的是什么,但是对于一些示例脚本看这里。它可能不是一个答案,但可能对你有帮助。
#!/bin/bash
/usr/bin/expect << EOD
set timeout 200
spawn telnet 31.168.109.31
expect "login:"
send "root\r"
expect "password"
send "mypassword\r"
expect "root#"
#rest of your logic what you want.