たとえば、fugaという文字列をhoge.datから抽出したい場合は以下。
$ grep fuga hoge.dat
同様に-----という文字列をhoge.datから抽出したい場合、以下のようにすると、認識できないオプションと言われて、エラー。quoteしてもだめ。
$ grep ----- hoge.dat grep: unrecognized option `-----' Usage: grep [OPTION]... PATTERN [FILE]... Try `grep --help' for more information. $ grep '-----' hoge.dat grep: unrecognized option `-----' Usage: grep [OPTION]... PATTERN [FILE]... Try `grep --help' for more information. $ grep "-----" hoge.dat grep: unrecognized option `-----' Usage: grep [OPTION]... PATTERN [FILE]... Try `grep --help' for more information.
manpageを読むと以下のように書いてある。
- -e pattern
- パターンを指定します。パターンの先頭が、 - で始まっているなど、オプションの指定と混同される可能性がある時に有効です。 通常は、 -e を省略してパターンを記述する事ができます。
今回のようなハイフンから始まるパターンを検索するにはパターンの前に-eをつける。
$ grep -e ----- hoge.dat