我正在使用crontab,如:
00 */1 * * * wget http://www.test.com/cron/archieve
我想知道在命令末尾使用> /dev/null 2>&1
的区别,以及它是否推荐。
答案 0 :(得分:5)
如果你不添加> /dev/null 2>&1
,那么该命令的输出将邮寄给用户,这个cron作业可以运行 - 可能是你。
我想你不想被cron的工作垃圾邮件 - 但这取决于你
编辑:解释> /dev/null 2>&1
的真正含义。
有3个标准文件描述符:0(stdin),1(stdout)和2(stderr)。
> file
与1> file
相同,换句话说,重定向标准。文件描述符1(stdout)到文件。
2>&1
表示重定向标准。文件描述符2(stderr)到重定向1(stdout)的相同位置。
最后,> /dev/null 2>&1
的完全效果意味着将stdout和stderr重定向到/dev/null
,换句话说,使该程序完全无声
答案 1 :(得分: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$