crontab 中的命令需要重定向输出

原因

如果不重定向输出,输出内容会以邮件的形式发送给用户。

建议

在不需要查看输出内容的命令后加上 >/dev/null 2>&1

  • > 重定向(默认时把标准输出重定向)
  • /dev/null Linux的空设备文件
  • 2 错误输出(stderr)
  • 1 标准输出(stdout)
  • & 重定向到文件描述符,必须在文件描述符数字之前加&(也叫重定向绑定)
    所以此命令的含义是,标准输出重定向到空设备,错误输出重定向到标准输出

拓展

&> file,这个代表所有输出(0,1,2...)都重定向到file
1>file 2>file&>file都会开启多个file的管道,如果同时有输出产生,会抢占file的IO,效率低。
>/dev/null 2>&1,只会开启一个file的管道,IO效率高。

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!