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