コマンドプロンプトから標準出力とエラー出力の取得方法

先輩がAntでコンパイルのタスクを実装し、batで実行していました。
その中の処理で、コンパイルエラーの場合にのみ、エラー内容をログ出力するようになっていました。
ちょっと素敵な実装と思い、調べてみました。


参考にさせて頂いたのはこちらのサイト
MS-DOS 画面の出力をファイルに保存する


仕組みはコマンドプロンプトが出力する時に、内部的に出力番号をふっているからでした。
それを元に下記の様に実装します。

@echo off

echo 標準出力
echo test.bat > log.txt

echo 標準出力(追記)
echo test.bat >> log.txt

echo エラー出力
echo test.bat 2 > log.txt

echo エラー出力(追記)
echo test.bat 2 >> log.txt

echo 標準出力とエラー出力を個別に出力
echo test.bat > log.txt 2 > error.txt

echo 標準出力とエラー出力を同時に出力
echo test.bat > log.txt 2>&1

便利な機能だv( ̄ー ̄)v