linux下/dev/null 的用途

作者:iamlaosong

我有一个数据导入程序,用crontab设定定时执行,有时数据需要重新导入时,就人工运行一次,结果发现,人工导入的时间要大于定时执行的时间,究其原因,初步估计是显示花掉了,因为程序中每导入一条数据,显示一次导入数据的名称和记录序号,为节省时间,可以输出重定向到/dev/null中。如:

./impx.sh > /dev/null

可以把/dev/null看作一个"黑洞",它非常等价于一个只写文件,所有写入它的内容都会永远丢失。

而尝试从它那儿读取内容则什么也读不到然而, /dev/null对命令行和脚本都非常的有用。

1、禁止标准输出

 cat $filename >/dev/null
    # 文件内容丢失,而不会输出到标准输出.

2、禁止标准错误

 rm $badname 2>/dev/null
    # 这样错误信息[标准错误]就被丢到太平洋去了.

3、禁止标准输出和标准错误的输出.

 cat $filename 2>/dev/null >/dev/null

4、清除日志文件内容

 cat /dev/null > /var/log/messages
    #  : > /var/log/messages   有同样的效果, 但不会产生新的进程.(因为:是内建的)

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。