我使用像这样的 crontab:
00 */1 * * * wget http://www.test.com/cron/archieve
我想知道在> /dev/null 2>&1
命令末尾使用的区别,以及是否推荐。
如果您不添加> /dev/null 2>&1
,该命令的输出将通过邮件发送给运行该 cron 作业的用户 - 可能是您。
我想您不想被 cron 作业发送垃圾邮件 - 但这取决于您
编辑:解释> /dev/null 2>&1
真正的意思。
有 3 个标准文件描述符:0 (stdin)、1 (stdout) 和 2 (stderr)。
> file
与 相同1> file
,换句话说,重定向 std。文件描述符 1 (stdout) 到文件。
2>&1
意味着重定向标准。文件描述符 2 (stderr) 到重定向 1 (stdout) 的相同位置。
最后,> /dev/null 2>&1
手段的全部效果将 stdout 和 stderr 都重定向到/dev/null
,换句话说,使该程序完全静默
> /dev/null 2>&1
如果结果对您无关紧要,您可以重定向 stdio/stderr 流。看一些例子:
alex@work:~/dev$ ls
arm-2011.03-42-arm-none-eabi.bin linux
backup_from_ak linux-3.4.6.tar.bz2
bc-1.06 linux.tar.gz
CodeSourcery mach-lpc32xx
alex@work:~/dev$ ls > /dev/null 2>&1
alex@work:~/dev$