パイプ
プログラムやコマンドの出力結果を、別のプログラム・コマンドの入力に渡せると単純な動作のコマンドを組み合わせて複雑な処理をすることができます。この時使われるのがパイプ(=パイプライン)で、記号「|」で表します。
パイプは、コマンドの標準出力に渡します。次の例はlsコマンドの実行結果(標準出力)をwcコマンドの標準入力に渡します。
ls | wc -l
このコマンドを実行すると、カレントディレクトリ内のファイルおよびディレクトリの数をカウントします。
リダイレクト
コマンドの実行結果は、通常、端末の画面上に表示されます。またコマンドへの入力には一般的にキーボードが使われます。
実行結果を画面上に表示するのではなく、ファイルに保存したい場合や、コマンドへの入力にあらかじめ用意しておいたファイルを使う場合などに役立つのがリダイレクト(=リダイレクション)です。
リダイレクトはコマンドへの入力元や出力先をコントロールします。コマンドの実行結果を画面上に表示するのではなく、ファイルに保存したい場合、リダイレクト記号の「>」を使います。
次の例では、lsコマンドの実行結果をfilelistファイルに保存しています。
ls -l > filelist