在crontab中运行两个命令
我的crontab文件中有这一行
*/1 * * * * espeak 'foo' && espeak 'bar'
但只有一半,第一个命令每分钟执行一次。
当我在终端上写这个时,它就像一个魅力。
是否有不同的方法在crontab文件的同一行中执行2个命令?
&&被bash
解释为在命令行中分隔管道的运算符之一。 如果从bash
调用这些命令,则应该运行:
*/1 * * * * bash -c 'espeak "foo" && espeak "bar"'
在crontab中使用&&是正确的。
如果未执行第二个命令,则表示第一个命令未成功返回。 然后你可能想要使用espeak 'foo'; espeak 'bar'
espeak 'foo'; espeak 'bar'
(所以无论第一个命令返回什么,第二个命令都会被执行),但这并没有告诉你为什么第一个命令没有成功返回。