1

我正在尝试编写一个期望脚本来远程登录机器并重新启动它。当我手动运行脚本时,它按预期工作

但是当我尝试在 crontab 上自动运行它时,它并没有完成这个过程。

脚本是:

#!/usr/local/bin/expect
spawn telnet 192.168.1.1
expect "login:"
send "root\r"
expect "Password:"
send "<password>\r"
send "bash\r"
send "cd /opt\r"
send "reboot\r"
interact

脚本的输出(当它由 cron 运行时)

spawn telnet 192.168.1.1
Trying 192.168.1.1...
Connected to 192.168.1.1.
Escape character is '^]'.
DD-WRT v24-sp2 std (c) 2010 NewMedia-NET GmbH
Release: 08/07/10 (SVN revision: 14896)
RK-SWOT-2 login: root
Password:

就是这样。不再继续在 cron 上前进。你能帮我吗?

4

1 回答 1

2

我已经解决了这个问题。

我认为问题出在交互命令上。我把它改成

expect eof

问题消失了。

于 2012-08-16T07:29:31.047 回答