このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン | |||
bash:06_redirection [2015/05/08 06:17] – matsui | bash:06_redirection [2015/10/07 00:30] (現在) – 外部編集 127.0.0.1 | ||
---|---|---|---|
行 1: | 行 1: | ||
+ | ====== 06 Bash リダイレクション ====== | ||
+ | |||
+ | |||
+ | ===== 書式 標準入出力のリダイレクション ===== | ||
+ | < | ||
+ | > File | ||
+ | >> | ||
+ | > | ||
+ | (標準出力の内容をファイルディスプリタm番に向ける) | ||
+ | >& | ||
+ | < File | ||
+ | <& | ||
+ | (標準入力をファイルディスプリタm番からとする。) | ||
+ | <& | ||
+ | </ | ||
+ | |||
+ | ===== 書式 ファイルディスプリタ番号を指定したリダイレクション ===== | ||
+ | < | ||
+ | n> File | ||
+ | | ||
+ | n< File | ||
+ | | ||
+ | </ | ||
+ | |||
+ | ===== ファイルディスプリタ番号 ===== | ||
+ | |||
+ | 0(標準入力)と1(標準出力)は省略する事ができます。 | ||
+ | |50|300|c | ||
+ | |0|標準入力| | ||
+ | |1|標準出力| | ||
+ | |2|標準エラー| | ||
+ | |||
+ | ===== 例 ===== | ||
+ | |||
+ | === lsコマンドの結果をlistへ書き込む。 === | ||
+ | <code console> | ||
+ | $ ls > list | ||
+ | </ | ||
+ | |||
+ | === 既存のファイルに追加書き込み === | ||
+ | |||
+ | dateコマンドをlistへ書き込んだ後、追加でlsの結果を書き込む。 | ||
+ | <code console> | ||
+ | $ date > list | ||
+ | $ ls >> list | ||
+ | </ | ||
+ | |||
+ | === 1(標準出力)をlogに2(標準エラー)をerrlogに出力する。 === | ||
+ | <code console> | ||
+ | $ command > log 2> errlog | ||
+ | </ | ||
+ | |||
+ | === エラー(2)を/ | ||
+ | <code console> | ||
+ | * 6 * * * root / | ||
+ | </ | ||
+ | |||
+ | === 1(標準出力)も2(標準エラー)も残さない。 === | ||
+ | |||
+ | ・2>& | ||
+ | ・/ | ||
+ | <code console> | ||
+ | $ command >/ | ||
+ | </ | ||
+ | |||
+ | <color red> | ||
+ | ・この場合1(標準出力)を2(標準エラー)にコピーした後、1(標準出力)を捨てる為、2(標準エラー)は残る事になり、1(標準出力)も2(標準エラー)も残る事になる。 | ||
+ | <code console> | ||
+ | $ commnad 2>&1 >/ | ||
+ | </ | ||
+ | |||
+ | {{tag> | ||