那个2>/dev/null是如果你的命令出错的话,错误报告直接就删除了。不会显示在屏幕上,或者是以邮件的形式发给你了。 [test @test test]# ls -al > list.txt 将显示的结果输出到 list.txt 档案中,若该档案以存在则予以取代! [test @test test]# ls -al >> list.txt 将显示的结果累加到 list.txt 档案中,该档案为累加的,旧数据保留! [test @test test]# ls -al 1> list.txt 2> list.err 将显示的数据,正确的输出到 list.txt 错误的数据输出到 list.err [test @test test]# ls -al 1> list.txt 2>&1 将显示的数据,不论正确或错误均输出到 list.txt 当中! [test @test test]# ls -al 1> list.txt 2> /dev/null 将显示的数据,正确的输出到 list.txt 错误的数据则予以丢弃! 注意!错误与正确档案输出到同一个档案中,则必须以上面的方法来写! 不能写成其它格式! 这个观念相当的重要,尤其是在 /etc/crontab 当中执行的时候,如果我们已经知道错误的讯息为何,又不想要让错误的讯息一直填满 root 的信箱,就必须以 2> 搭配 /dev/null 这个垃圾桶黑洞装置,来将数据丢弃!这个相当的重要! 这里我们来说明一下命令重导向里面几个常用的符号与装置: < :由 < 的右边读入参数档案; > :将原本由屏幕输出的正确数据输出到 > 右边的 file ( 文件名称 ) 或 device ( 装置,如 printer )去; >> :将原本由屏幕输出的正确数据输出到 >> 右边,与 > 不同的是,该档案将不会被覆盖,而新的数据将以『增加的方式』增加到该档案的最后面; 2> :将原本应该由屏幕输出的错误数据输出到 2> 的右边去。 /dev/null :可以说成是黑洞装置!
2> /dev/null的解释
最新推荐文章于 2024-06-25 13:42:40 发布