GNU/Linux >> Linux の 問題 >  >> Linux

コマンド出力をファイルと端末にリダイレクト

2>&1 は、標準出力とともに標準エラーもリダイレクトされることを意味することに注意してください。だから

someCommand | tee someFile

ファイル内の標準出力のみを提供しますが、標準エラーは提供しません。標準エラーはコンソールにのみ表示されます。ファイルでも標準エラーを取得するには、次を使用できます

someCommand 2>&1 | tee someFile

(ソース:シェルでは、「 2>&1 」とは何ですか?)。最後に、上記の両方のコマンドでファイルが切り捨てられ、クリアが開始されます。一連のコマンドを使用する場合、それらすべての出力とエラーを次々に取得したい場合があります。この場合、「tee」コマンドに -a フラグを使用できます:

someCommand 2>&1 | tee -a someFile

出力をオーバーライドせずに追加する必要がある場合は、「tee」コマンドの「-a」または「--append」オプションを使用できます:

ls 2>&1 | tee -a /tmp/ls.txt
ls 2>&1 | tee --append /tmp/ls.txt

はい、出力をリダイレクトすると、コンソールには表示されません。 tee を使用 .

ls 2>&1 | tee /tmp/ls.txt

Linux
  1. Linuxでコマンド出力をファイルに保存する方法

  2. Linuxでの入出力とエラーリダイレクトの操作

  3. Linuxスクリプトコマンドを使用してターミナルセッションをキャプチャして出力する方法

  1. Linuxで出力をファイルとStdoutにリダイレクトする方法

  2. プログラムの出力をZipファイルにリダイレクトする方法は??

  3. ターミナルCtrl+sとCtrl+z?

  1. リダイレクトとパイプ出力?

  2. Linux での tee コマンドの例

  3. system() の出力をファイルにリダイレクトする方法は?