该命令起什么作用find / -name gcc 2>/dev/null
?
答案1
为了便于理解,我们将其分解一下:
find / -name gcc
在根目录(/
包含 等的目录/etc
)中搜索/home
名为 的文件gcc
。此搜索以递归方式进行,这意味着也会搜索子目录、子子目录等。
操作员>
重定向输出。在本例中,2>
重定向错误消息标准通道的输出stderr
。
ls > the_list.txt # writes the output of ls to a file
ls 2> the_list.txt # writes the output of ls on stderr to a file
/dev/null
是一个伪设备,基本上会丢弃写入的所有内容。如果你必须写入东西,你可以使用它某处,但基本上只是希望它消失。
So 的ls > /dev/null
意思是“将 ls 的输出重定向到 /dev/null”,或者只是“不要用输出来打扰我”。与上文一样,ls 2>/dev/null
将写的内容发送stderr
到/dev/null
。
完整命令
find / -name gcc 2>/dev/null
因此意味着“在整个系统中搜索名为的文件gcc
,但不显示在执行此操作时发生的任何错误消息”。