質問: リナックスの勉強をしています。locateコマンドをgrepで絞り込む例がありました。 そこで grep '^/etc' と書かれていました なぜ「 ' 」で区切ったのか なぜ「^」というのを使っているのか、どういう意味なのか 教えてください よろしくおねがいします
回答: > なぜ「 ' 」で区切ったのか ^/etc の場合は、「 ' 」を付けなくても問題ありません。ただ、↓の文字たちは、bashにおいて特別な意味を持ちます。 * ? [ ' " ` \ $ ; & ( ) | ~ < > # % = これらの文字を引数として渡したい場合は、「 ' 」で括り、この中の文字は、特別な意味を持たせないで、普通の文字として扱うよう指示します。 grepでは正規表現を使う関係で、これら特殊文字を使うことが多いため、特殊文字が含まれているかいないかに関わらず、「 ' 」で括ることを習慣づけておくと良いです。 > なぜ「^」というのを使っているのか、どういう意味なのか ^は行の先頭という意味です。'^/etc'なら、「/etcで始まる行」という意味になります。