Linux

【Bourne Shell】リダイレクション

リダイレクション

表記意味
cmd <fileファイルの内容をコマンドの標準入力に渡す。
cmd >&2標準出力を標準エラー出力にリダイレクト
cmd >fileファイル作成 or 上書き
cmd >>file追加出力。ファイルがなければ作成
cmd 2>file標準エラー出力をファイルにリダイレクト(作成、上書き)
cmd &>file標準出力/エラー出力を同一ファイルにリダイレクト
cmd >file 2>&1同上
cmd &>>file標準出力/エラー出力を同一ファイルに書き込み
cmd >file 2>&1同上
cmd >file 2>file2標準出力、エラー出力を別々のファイルにリダイレクト
cmd >>file 2>>file2標準主力、エラー出力を別々のファイルに追加書き込み

応用編

1.標準出力の内容をファイルと画面に出力する。

利用するシェルスクリプト

cat test
echo "標準出力" >&1
echo "エラー出力" >&2

sh test | tee test.log

<画面の出力結果>
エラー出力
標準出力

<test.logファイルの内容>
cat test.log
標準出力

sh test 2>&1 | tee test.log

<画面の出力結果>
標準出力
標準エラー出力

<ファイルの出力結果>
標準出力
標準エラー出力

-Linux