概要
動画から字幕を抽出するツールを作るために、MP4BOXを使用しているのですが、動画のファイル情報を取得する際、
mp4box -info aaa.mp4
とすると思います。この出力結果をパイプやリダイレクトでで次のコマンドに渡したい場合、 標準出力ではなく、標準エラー出力を使用します。
具体的な使用法
誤
例:aaa.mp4のファイル情報をaaa.txtに書き込む
mp4box -info aaa.mp4 > aaa.txt
ファイルに書き込まれずにコマンドプロンプトに出力されてしまいました。
正
標準出力ではなく、標準エラー出力をリダイレクトする
mp4box -info aaa.mp4 2> aaa.txt
正しくaaa.txtにファイル情報が書き込まれました。
まとめ
最初、標準エラー出力に出ていることが分からずに小一時間無駄にしました。
この方法はパイプでつなげる場合も同じですし、プログラムでコマンドプロンプトの実行結果を受け取る際にも同じことが言えます。参考になれば幸いです。