> File 標準出力の内容をFileに書き込む >> File 標準出力の内容をFileに追加書きする。 >m ファイルディスプリタm番の内容を標準出力にコピーする。 (標準出力の内容をファイルディスプリタm番に向ける) >&- 標準出力のファイルディスプリタを閉じる < File 標準入力をFileの内容とする。 <&m ファイルディスプリタm番の内容を標準入力にコピーする。 (標準入力をファイルディスプリタm番からとする。) <&- 標準入力のファイルディスプリタを閉じる
n> File ファイルディスプリタn番の内容をFileに書き込む n>&m ファイルディスプリタm番の内容をファイルディスプリタn番にコピーする n< File Fileのデータをファイルディスプリタn番の入力とする n<&- ファイルディスプリタn番を閉じる
0(標準入力)と1(標準出力)は省略する事ができます。
50 | 300 |
0 | 標準入力 |
1 | 標準出力 |
2 | 標準エラー |
$ ls > list
dateコマンドをlistへ書き込んだ後、追加でlsの結果を書き込む。
$ date > list $ ls >> list
$ command > log 2> errlog
* 6 * * * root /root/rsync.sh 2> /var/log/rsync.log 1> /dev/null
・2>&1は1(標準出力)を2(標準エラー)にコピーするという意味
・/dev/nullは捨てるという意味。
$ command >/dev/null 2>&1
■NG例
・この場合1(標準出力)を2(標準エラー)にコピーした後、1(標準出力)を捨てる為、2(標準エラー)は残る事になり、1(標準出力)も2(標準エラー)も残る事になる。
$ commnad 2>&1 >/dev/null