作者othree (OOO)
看板FreeBSD
标题[问题] crontab执行的动作有没有时间限制?
时间Fri Apr 13 13:00:30 2007
我利用crontab和expect
每天收集资料
发表到一个BBS看板
不过我後来发现
资讯量大
发表时间比较长的话
动作就会作到一半没有继续下去
(文章贴到一半)
这时候如果我手动登入
亲自执行script重新发表同样内容的文章的话
就不会有这个问题
所以我在想会不会是crontab对每个执行绪有什麽限制造成这样的问题
不知道有没有人有什麽相关经验可以提供的
或是其他可能的原因
FreeBSD 6.0
expect是用port装的
shell script内容如下
#!/bin/sh
#\
exec /usr/local/bin/expect "$0" ${1+"$@"}
set postbuffer ""
set up \x1B\x5B\x41
set down \x1B\x5B\x42
set left \x1B\x5B\x44
set right \x1B\x5B\x43
set ctrlp \020
set ctrlx \030
proc readfile {} {
global POSTFILE postbuffer
if [catch {open $POSTFILE} fp] return
set line 0
while {[gets $fp postbuffer]!=-1} {
send " $postbuffer\r"
incr line
}
close $fp
}
spawn telnet -8 bbs.domain.name
expect "guest" {
send "id\rpassword\r"
send "\r\r\x1B\x5B\x44\x1B\x5B\x44\x1B\x5B\x44\x1B\x5B\x44"
send "f\r\r\020\rFTP报告 [exec date +%F]\r\r"
send " 剩余空间 (GB)\r"
set POSTFILE "~othree/bin/disk.txt"
readfile
send "\r 档案变动\r"
set POSTFILE "~othree/bin/diff.txt"
readfile
send "\030s\rl\r\x1B\x5B\x44\x1B\x5B\x44\x1B\x5B\x44\x1B\x5B\x44\ry\r\r\r"
} timeout { exit }
interact timeout 300 {send "\x00"}
exit
--
http://blog.othree.net/
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.118.5.39