1

我使用像这样的 crontab:

00 */1 * * * wget http://www.test.com/cron/archieve

我想知道在> /dev/null 2>&1命令末尾使用的区别,以及是否推荐。

4

2 回答 2

5

如果您不添加> /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,换句话说,使该程序完全静默

于 2012-11-13T05:18:29.010 回答
0

> /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$
于 2012-11-13T05:08:52.263 回答