Bash スクリプトで出力を無音にするにはどうすればいいですか? 質問する

Bash スクリプトで出力を無音にするにはどうすればいいですか? 質問する

stdout に出力するプログラムがあり、ファイルにパイプするときに Bash スクリプトでその出力を無音にしたいと考えています。

たとえば、プログラムを実行すると次のように出力されます。

% myprogram
% WELCOME TO MY PROGRAM
% Done.

次のスクリプトでは、ターミナルに何も出力しないようにします。

#!/bin/bash
myprogram > sample.s

ベストアンサー1

stderr にも出力される場合は、それを黙らせたいでしょう。ファイル記述子 2 をリダイレクトすることでそれを行うことができます。

# Send stdout to out.log, stderr to err.log
myprogram > out.log 2> err.log

# Send both stdout and stderr to out.log
myprogram &> out.log      # New bash syntax
myprogram > out.log 2>&1  # Older sh syntax

# Log output, hide errors.
myprogram > out.log 2> /dev/null

おすすめ記事