相信大家经常能在shell脚本中发现就像我们平时写的程序一样,一段程序会处理外部的输入,然后将运算结果输出到指定的位置。在交互式的程序中,输入来自用户的键盘和鼠标,结果输出到用户的屏幕,甚至播放设备中。而对于某些后台运行的程序,输入可能来自于外部的一些文件,运算的结果通常又写到其他的文件中。而且程序在运行的过程中,会有一些关键性的信息,比如异常堆栈,外部接口调用情况等,这些都会统统写到日志文件里。如果某些情况下,我们需要将shell命令的执行结果存储到文件中,那么我们就需要使用输入输出的重定向功能。当执行shell命令时,会默认打开3个文件,每个文件有对应的文件描述符来方便我们使用:

详解shell中>/dev/null 2>&1到底是什么

详解shell中>/dev/null 2>&1到底是什么

详解shell中>/dev/null 2>&1到底是什么

详解shell中>/dev/null 2>&1到底是什么

详解shell中>/dev/null 2>&1到底是什么