2011-12-20 8 views
1

実行可能ファイルから出力を完全にリダイレクトできないという問題が発生しています。議論のために、実行可能ファイルがprintnames.exeであるとしましょう。しかし実行可能ファイルから出力をリダイレクトしますが、すべての出力をリダイレクトできませんか?

Adam 
Tim 
Jesse 
Sean 

私はprintnames.exe > myfile.txtを行う場合は、コマンドウィンドウを示しています:

私はprintnames.exe(リダイレクトせずに)、以下の出力がコマンドウィンドウに表示されない場合

Tim 
Sean 

..そしてmyfile.txtの内容は:

Adam 
Jesse 

これはどのように可能ですか?コード内で何がこのような動作を引き起こす可能性がありますか?リダイレクションオペレータはリダイレクトするべきではないすべて出力?

+0

あなただけの標準出力をリダイレクトしていますか?標準エラーもリダイレクトする必要があります。 – Oded

答えて

5

これはどのように可能ですか?

出力ストリームは2つあります。

どのようなコードでこのような現象が発生する可能性がありますか?

標準出力への書き込みと標準エラーへの書き込み。

すべての出力をリダイレクトする必要はありませんか?

いいえデフォルトのリダイレクトは標準出力に適用されます。

2>を使用して標準エラーをリダイレクトします。


http://www.gnu.org/software/bash/manual/bashref.html#Redirections

+0

私はそれを理解しました(なぜ私はあなたのコメントを削除しました - あなたのものは見ませんでした)。私は "printnames.exe> myfile.txt 2>&1"を行う必要がありました。 –

関連する問題