此问题基于 this answer .
为什么从两个命令中得到相同的输出?
命令 A
$sudo grep muel * /tmp
masi:muel
命令 B
$sudo grep -H muel * /tmp
masi:muel
Rob 的评论暗示我命令 A 不应该给我
masi:
,但只有 muel
.总之,
-H
的实际用途是什么? ?
最佳答案
如果给出多个文件名,默认情况下 Grep 将列出文件名。 -H
即使只给出一个文件名,选项也会这样做。在您的两个示例中,都给出了多个文件名。
这是一个更好的例子:
$ grep Richie notes.txt
Richie wears glasses.
$ grep -H Richie notes.txt
notes.txt:Richie wears glasses.
当您为未知数量的文件提供通配符时,它会更有用,并且即使通配符只匹配一个文件,您也总是希望打印文件名。
关于grep - 了解Grep选项-H在不同情况下的实际使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1122218/