|
833) リダイレクト?「2>&1」って何? TIGER 2002/10/25(金) 10:43 |
|
バッチファイルの記述の中に下のような記述がありました。 「2>&1」の部分はどういう意味なのかわかる方いらっしゃいますか? 「コマンド1 > ファイル名 2>&1 |
|
834) Re:リダイレクト?「2>&1」って何? あい 2002/10/25(金) 11:54 |
|
>バッチファイルの記述の中に下のような記述がありました。 >「2>&1」の部分はどういう意味なのかわかる方いらっしゃいますか? > >「コマンド1 > ファイル名 2>&1 「>」はエラーの場合はリダイレクトはしません。 「2>」はエラが発生した場合のリダイレクトのようです &1についてはわかりません(^^;) |
|
837) Re2:リダイレクト?「2>&1」って何? じゃく 2002/10/25(金) 16:52 |
|
>>バッチファイルの記述の中に下のような記述がありました。 >>「2>&1」の部分はどういう意味なのかわかる方いらっしゃいますか? XPのヘルプによると エラー出力ハンドルの出力をの内容を標準出力ハンドルへの入力(?)へ書き込むリダイレクトのようです。 標準出力のハンドルの入力へ書き込むってどういうことなんでしょうね。 XPのヘルプを引用します。 > コマンド プロンプト ウィンドウの代わりに、ファイルまたはデバイス (プリンタなど) にコマンドの出力を書き込みます。 < コマンドの入力を、キーボードからの入力の代わりに、ファイルから読み取ります。 >> 既にファイルにある情報を削除しないで、ファイルの最後にコマンドの出力を追加します。 >& あるハンドルからの出力を別のハンドルの入力に書き込みます。 <& あるハンドルからの入力を読み取り、別のハンドルの出力に書き込みます。 | あるコマンドからの出力を読み取り、別のコマンドの入力に書き込みます。パイプとも呼ばれます。 既定では、コマンドの入力 (STDIN ハンドル) をキーボードから Cmd.exe に送り、Cmd.exe はコマンドの出力 (STDOUT ハンドル) をコマンド プロンプト ウィンドウに送ります。 次の表は、利用できるハンドルを示しています。 ハンドル ハンドルに対応する数値 説明 STDIN 0 キーボード入力。 STDOUT 1 コマンド プロンプト ウィンドウへの出力。 STDERR 2 コマンド プロンプト ウィンドウへのエラーの出力。 |
|
838) Re:リダイレクト?「2>&1」って何? まぁくん 2002/10/27(日) 01:21 |
|
はじめまして まぁくんと申します。 先のコメントにと重複する部分がありますが その辺はご了承ください。 >「コマンド1 > ファイル名 2>&1 というコマンドだった場合、コマンド1を実行した結果を ファイル名に出力します。 (皆さん説明のとおり”>”のリダイレクト命令によります。) 通常ここまでだと、エラー終了した場合の結果は出力されません2>&1とすることによってファイル名1にエラーの場合も結果を出力できるようなります。 ちなみにエラーの場合は、違うファイルに出力したい時は 2> ファイル名2 となります。 バッチ処理関係の本を参照すれば 2>&1 というリダイレクトの使い方をそのまま説明していると思います。 |