Citações em comandos - exemplo grep

Citações em comandos - exemplo grep

Queria saber quando usar aspas com grep ou outras ferramentas. Por exemplo, os dois comandos a seguir fornecem os mesmos resultados.

[Jhm@localhost /]$ grep Hello ./testfile 
 Hello world

[Jhm@localhost /]$ grep "Hello" ./testfile 
 Hello world

Faz diferença se uma palavra estiver entre aspas?

Responder1

Somente se a palavra contiver caracteres que tenham um significado especial para o shell.

grep "Hello?" ./testfile

irá procurar a string literal Hello?no arquivo. No entanto, por exemplo,

grep Hello? ./testfile

irá procurar a string HelloAse houver um arquivo HelloAem seu diretório atual, porque ?corresponderá a qualquer caractere único como um padrão glob.

Presumo que você não esteja surpreso com isso

grep Hello World ./testfile

e

grep "Hello World" ./testfile

são diferentes.

informação relacionada