makefile でコマンド呼び出しのエコーを抑制しますか? 質問する

makefile でコマンド呼び出しのエコーを抑制しますか? 質問する

私は、出力を stdout に印刷する割り当て用のプログラムを作成しました。割り当て仕様では、呼び出されたときにプログラムをmake run > outputFile実行し、仕様で指定されたものと同じ SHA1 フィンガープリントを持つファイルに出力を書き込む Makefile を作成する必要があります。

私の問題は、makefile にあります:

...
run:
     java myprogram

また、私のプログラムを実行するコマンド (例: java myprogram) も出力ファイルに出力されるため、ファイルにこの余分な行が含まれ、フィンガープリントが間違ってしまいます。

コマンド呼び出しをコマンド ラインにエコーせずにコマンドを実行する方法はありますか?

ベストアンサー1

@実行中のコマンドを印刷しないように gmake に指示するには、コマンドの先頭に追加します。次のようになります。

run:
     @java myprogram

Oli が示唆したように、これは Make の機能であり、Bash の機能ではありません。

一方、Bash は、明示的に (つまり-xオプションを使用して) 指示しない限り、実行中のコマンドをエコーすることはありません。

おすすめ記事