grep や他のツールで引用符を使用するタイミングを知りたいです。たとえば、次の 2 つのコマンドは同じ結果になります。
[Jhm@localhost /]$ grep Hello ./testfile
Hello world
[Jhm@localhost /]$ grep "Hello" ./testfile
Hello world
単語が引用符で囲まれているかどうかは重要ですか?
答え1
単語にシェルにとって特別な意味を持つ文字が含まれている場合のみ。
grep "Hello?" ./testfile
ファイル内のリテラル文字列を検索しますHello?
。ただし、たとえば、
grep Hello? ./testfile
現在のディレクトリにHelloA
ファイルがある場合、 glob パターンとして任意の 1 文字と一致するため、文字列が検索されます。HelloA
?
驚かないと思いますが
grep Hello World ./testfile
そして
grep "Hello World" ./testfile
異なっています。