/dev/null 的含义和用途

来源:互联网 发布:excel数据导入matlab 编辑:程序博客网 时间:2024/05/22 08:23
/dev/null 代表空设备文件,它等价于一个只写文件,所有写入它的内容都会永远丢失,而尝试从它那儿读取内容则什么也读不到。

0:表示键盘输入(stdin)
1:表示标准输出(stdout),系统默认是1
2:表示错误输出(stderr)

1>/dev/null等同于 >/dev/null
>/dev/null 2>/dev/null 等同于 >/dev/null 2>&1
&1:&表示等同于的意思,2>&1,表示2的输出重定向等于1

举例
cat $filename >/dev/null 2>/dev/null  等同于 cat $filename >/dev/null 2>&1
    # 如果"$filename"不存在,将不会有任何错误信息提示.
    # 如果"$filename"存在, 文件的内容不会打印到标准输出.
    # 因此, 上面的代码根本不会输出任何信息.

常见场景
在我们定义crontab时,为了避免垃圾数据的产生,经常用到 >/dev/null 2>&1
2 0