のマンページでgrep
は、-I
フラグについて次のように説明しています。
-I Ignore binary files. This option is equivalent to
--binary-file=without-match option.
また、バイナリファイルについても次のように述べています。
--binary-files=value Controls searching and printing of binary files.
Options are binary, the default: search binary files but do not print
them; without-match: do not search binary files; and text: treat all
files as text.
バイナリファイルの一致を気にするシナリオは考えられません。そのようなシナリオが存在する場合、それは通常ではなく例外でなければなりません。grep
このフラグを設定する必要がなく、デフォルトでバイナリファイルを無視しないのはなぜですか?
このような変数をサポートしない他のコマンドに関する注意:
—
エリック
.(ba|z|foo)shrc':
エイリアスgrep = "grep -I" `でエイリアスを定義することにより、デフォルトオプションを設定できます。
これは実際には非常に便利です。たとえば、プロジェクトの統一バージョンを検索していて、どのファイルに保存されているか思い出せませんでした。バージョンの形式を検索すると、一致するバイナリファイルがいくつか見つかりました。バージョン5より前のバージョンであることが判明したため、バージョンはバイナリファイルにしか存在しなかったため、バイナリの一致がなければ見逃していた可能性があります。
—
ベンドハンセン
GREP_OPTIONS
を好みの設定に設定すれば、それほど多くのコマンドラインスイッチを使用する必要はありません。