Esse recurso facilita a leitura da saída de grep
. Se você quiser verificar os dados que grep
não pode ler diretamente, você pode acabar usando um canal para alimentar o grep em vez de criar um arquivo temporário que grep
possa ler. Se você não quer um arquivo temporário (por exemplo, porque seria enorme), então sem --label
você teria o problema de que grep
não pode imprimir a informação em qual arquivo a correspondência foi encontrada.
Isso
echo $'fubar\nbaz\nbat' | grep --label=inputfile -H a
inputfile:fubar
inputfile:baz
inputfile:bat
é equivalente a
echo $'fubar\nbaz\nbat' > inputfile
grep -H a inputfile
inputfile:fubar
inputfile:baz
inputfile:bat
Sem --label
, a primeira abordagem não funcionaria (ou seja, não forneceria a saída desejada), portanto você teria que fazer algo assim:
echo $'fubar\nbaz\nbat' | grep a | awk '{print "inputfile:" $0}'
Mas isso não oferece realce de correspondência no console.