期望crontab上的脚本不能完全运行

时间:2012-08-16 06:54:44

标签: crontab expect cron-task

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

但是当我尝试在crontab上运行autoaticall时,它无法完成该过程。

脚本是:

#!/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上没有更多的进展。 你可以帮帮我吗?

1 个答案:

答案 0 :(得分:2)

我已经解决了这个问题。

我认为问题在于interactive命令。我把它改成了

expect eof

并且问题消失了。