这个线在我的cronjob选项卡中是什么意思?

* / 5 * * * * / usr / local / bin / php somephpfile.php >> / dev / null 2>&1

dev / null 2是什么意思?

谢谢

它将STDER(标准错误)redirect到STDOUT(标准输出)。 简而言之,它们都被redirect到/ dev / null,这意味着程序的输出不会被显示。

2>&1表示“发送stderr到标准输出”。

>>/dev/null意思是“把stdout附加到/ dev / null”,这是一种通过发送到/dev/null来隐藏程序输出的方法,它的唯一目的就是像数据的黑洞。 (严格来说,对于/dev/null>>/dev/null>/dev/null 。)

这些规则是从右到左进行评估的,所以他们说:“隐藏所有的输出到标准错误和标准输出”。 一个常见的错误是以相反的顺序指定它们,这不会隐藏stderr输出。

另外值得一提的是,通过说1>/dev/null 2>/dev/null 或者 &>/dev/null而不是将stderr发送到stdout然后发送stdout到/dev/null

这意味着将标准错误和标准输出redirect到无(抛弃)。