bashでの標準エラー出力へのリダイレクト
標準エラー出力しか必要ない場合は、 /dev/stderr にリダイレクトする。
#!/bin/bash echo hogehoge >/dev/stderr
これも似た感じだけど、標準出力と標準エラー出力が混ざってしまう(気にする必要があるのか?)
echo hogehoge >hoge.txt 2>&1
以下のようにして確認出来る
./hogehoge.txt >stdout.txt 2>stderr.txt
2009-08-11追記:
認識が間違ってた模様。
参考文献3番を参考に、標準エラー出力でファイルを作成するような例を考えてみた。
全く意味が無い例ですが、リダイレクトについては何となく理解できた。
#!/bin/bash
echo "これは標準出力です. "
echo "これはエラーメッセージです." 2>stderr.txt >&2
exit 0
よく考えてみたら、/dev/stderr も &2も同じなんだから、
1>&2 でやった方が確実で安全ですね。