为什么只有一个wget命令在我的crontab中工作?

我希望每天两次从我的服务器上的PHP脚本获取内容,更改查询variableslang来设置我们想要的语言,并将这些内容保存在两个语言特定的文件中。 这是我的crontab:

 */15 * * * * ~root/apache.sh > /var/log/checkapache.log 10 0 * * * wget -O /path/to/file-sv.sql "http://mydomain.com/path/?lang=sv" 11 0 * * * wget -O /path/to/file-en.sql "http://mydomain.com/path/?lang=en" 

问题是只有第一个wget命令行正在被执行(或者更确切地说:正在写入的唯一文件是/path/to/file-sv.sql )。 如果我切换第二行和第三行, /path/to/file-en.sql改为写入/path/to/file-en.sql 。 第一行总是按预期运行,不pipe它在哪里。

然后我尝试使用lynx -dump "http://mydomain.com/path/?lang=xx" > /path/to/file-xx.sql无济于事; 仍然只有第一只l line线成功执行。 即使混合wget和l did也没有改变这个!

有点绝望! 我错过了什么吗? 在crontab(结合)wget或lynx上有成千上万篇文章,但都涵盖了基本的设置和语法。 有没有人知道我做错了什么?

谢谢,
亚历山大

尝试在你的crontab结尾添加新行。

有一些文字是错误的。 在vim中编辑你的crontab然后显示不可见的字符。

 :set invlist 

你应该能够看到并纠正它。

尝试添加redirect,以debuggingcrontab(或读取根邮件):

 11 0 * * * wget -O /path/to/file-en.sql "http://mydomain.com/path/?lang=en" > /tmp/crontab_ouptput 2> /tmp/crontab_error 

还要从控制台运行“wget -O /path/to/file-en.sql”http://mydomain.com/path/?lang=en“”。

另外使用'crontab -e'validation新的crontab。

此外,请尝试删除不工作的行,并从键盘重新键入它。

备份corntab并运行命令:

 crontab -l | crontab -