7
Makefileは次のとおりです。は、grepの出力が空である
THIS.txt : foo.txt
grep THIS foo.txt > [email protected]
grepの出力が空の場合(なしでTHIS foo.txt)、makeはエラーメッセージを表示しますが、bashはそうではありません:
$ make
make:*** [THIS.txt] Error 1
$ grep THIS foo.txt > THIS.txt
$ grep THIS foo.txt 2>&1
どうしてですか? grep
の出力が空の場合、エラーメッセージを避けるためにメイクファイルを変更する方法はありますか?
+1、いいキャッチです。 – codaddict
ありがとう!何か他の理由で非ゼロの終了コードからの空の出力による非ゼロの終了コードを簡単に区別する方法はありますか?したがって、体系的に真に強制することはできません。 – alxpublic
空の出力は、自動的にゼロ以外の終了コードを意味するわけではありません。 'grep'がどのように動作するかだけに特有です。一致するものが見つからなければ、非ゼロの終了コードで終了します。 – Amber