[FAQ CENTER トップ]
[バッチコマンド FAQ トップへ]

バッチコマンド FAQ



スポンサード リンク




Q stdoutとstderrの違いは

A stdoutは標準の出力、stderrはエラーの出力先です。

例えば以下の実行結果を考えます。
(nonexist.txtは実際に存在しないファイルです)

【1】
C:\temp>dir nonexist.txt
ドライブ C のボリューム ラベルは cdrive です
ボリューム シリアル番号は xxxx-yyyy です

C:\temp のディレクトリ

ファイルが見つかりません

【2】
C:\temp>dir nonexist.txt >stdout.txt
ファイルが見つかりません

C:\temp>type stdout.txt
ドライブ C のボリューム ラベルは cdrive です
ボリューム シリアル番号は xxxx-yyyy です

C:\temp のディレクトリ

【3】
C:\temp>dir nonexist.txt 2>stderr.txt
ドライブ C のボリューム ラベルは cdrive です
ボリューム シリアル番号は xxxx-yyyy です

C:\temp のディレクトリ

C:\temp>type stderr.txt
ファイルが見つかりません

【1】の場合は標準出力、エラー出力ともコンソールに表示されます。
【2】で標準出力のみファイルに出力しています。
【3】ではエラー出力のみファイルに出力しています。

このように同じ出力でも正常・エラーで出力先が分かれる仕組みになっています。
元々これらはUNIXの仕組みであり、MS-DOSで同じ機能を組み込んだことになります。




スポンサード リンク



本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。)

[バッチコマンド FAQ トップへ]
[FAQ CENTER トップ]