Linux定时任务crontab中命令不输出与输出到/dev/null有什么不同
只是同步时间的话,没有太大区别
第一条,执行会有输出,当然,ntpdate是不会记录输出到文件的,当crontab调用时,错误和标准输出会写成mail通知你
第二条,标准输出重定向到/dev/null,关于/dev/null,你可以查一下资料看看详细的解释,我们把它理解为一个空文件吧,输出到这里就找不回来了
第三条,与第二条类似,2>&1是指将标准信息输出路径指定为错误信息输出路径,那么标准输出和错误输出都重定向到/dev/null,也就是不记录任何信息了
关于你提到对主机的影响,从ntpdate来讲,区别并不大,那么我们考虑另外一种环境,如果定时任务执行的是一个需要写大量日志的程序,那么就会存在你所讲的cpu、内存、io和磁盘占用等问题了。所以,当我们不需要记录额外信息的话,应该把标准输出和错误重定向到/dev/null
/dev/null 设备文件是一个特殊的文件,
它将清空送到它这里来的所有输入,
它的输出则可被视为一个空文件。
被称为 “黑洞设备” 。
cat /dev/null > filename.txt
结果:文件大小为0(清空后,不存在任何内容)
echo "" > filename.txt
结果:文件大小为1(清空后,仍存在空字符串)
参考文献:
https://www.linuxidc.com/Linux/2018-01/150087.htm
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!