我正在寻找如何工作的解释grep --label=LABEL
:也许有人可以给我一个[或两个]例子来说明它的--label=
用途。
我明白什么grep
和zgrep
应该做什么——后者在--label=
以下条目中提到info page
:
...在实现“zgrep”等工具时特别有用
到目前为止,我发现的 98% 都是复制/粘贴的,info grep
另外百分之两的命令嵌入在我不理解的脚本中。
答案1
此功能使读取输出更加grep
容易。如果您想检查grep
无法直接读取的数据,那么您最终可能会使用管道来提供 grep,而不是创建grep
可以读取的临时文件。如果您不需要临时文件(例如,因为它会很大),那么如果没有临时文件,您将遇到无法打印在哪个文件中找到匹配项的信息--label
的问题。grep
这
echo $'fubar\nbaz\nbat' | grep --label=inputfile -H a
inputfile:fubar
inputfile:baz
inputfile:bat
相当于
echo $'fubar\nbaz\nbat' > inputfile
grep -H a inputfile
inputfile:fubar
inputfile:baz
inputfile:bat
如果没有--label
第一种方法就无法工作(即无法提供所需的输出),因此您必须执行以下操作:
echo $'fubar\nbaz\nbat' | grep a | awk '{print "inputfile:" $0}'
但这并没有在控制台中提供匹配突出显示。