中crontab定时器里的"2>&1"含义解释

*/1 * * * * /usr/local/php/bin/php posts.php >> /data/logs/audit_bbsposts.log 2>&1 &

command >> out.file 2>&1 &


command >out.file是将command的输出重定向到out.file文件,即输出内容不打印到屏幕上,而是输出到out.file文件中。2>&1 是将标准出错重定向到标准输出,
这里的标准输出已经重定向到了out.file文件,即将标准出错也输出到out.file文件中。最后一个& , 是让该命令在后台执行。
试想2>1代表什么,2与>结合代表错误重定向,而1则代表错误重定向到一个文件1,而不代表标准输出;
换成2>&1,&与1结合就代表标准输出了,就变成错误重定向到标准输出.

0表示键盘输入

1表示屏幕输出

2表示错误输出

">"就是输出(标准输出和标准错误输出)重定向的代表符号

连续两个 ">" 符号,即 ">>" 则表示不清除原来的而追加输出。

重定向> 若有文件则清除原来数据,重新写入;没有则创建并写入;
重定向>>若有文件,则在文件末尾继续写入;没有则创建并写入

实际应用中应该是>>用的更多

原文地址:https://www.cnblogs.com/dongruiha/p/7380645.html