这个命令有什么作用(find / -name gcc 2>/dev/null)?

1 command-line

命令有find / -name gcc 2>/dev/null什么作用?

Hen*_*eck 5

让我们分解一下以便更好地理解:

find / -name gcc
Run Code Online (Sandbox Code Playgroud)

通过根目录(该搜索/目录,包含/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
Run Code Online (Sandbox Code Playgroud)

/dev/null是一种伪设备,它基本上会丢弃写入其中的所有内容。如果你必须在某处写东西,你可以使用它,但基本上只是想让它消失。

所以ls > /dev/null意味着“将 ls 的输出重定向到 /dev/null”,或者只是“不要用输出来打扰我”。如上所述,ls 2>/dev/null将写入的内容发送stderr/dev/null.

完整的命令

find / -name gcc 2>/dev/null
Run Code Online (Sandbox Code Playgroud)

因此意味着“在整个系统上搜索名为 的文件gcc,但不要向我显示这样做时发生的任何错误消息”。