シェルは「キーボードから入力し,画面に出力する」ようになっている。こうした入力と出力の方法を変更する場合には,リダイレクトを使う。たとえば,入力をファイルから行い,出力は捨ててしまう(画面への表示もファイルへの保存もしない)ということが可能だ。 リダイレクトには出力先を切り替える「>」,出力先のファイルに追加する「>>」,入力元を切り替える「<」,複数行の入力を行える「<<」がある。 出力先や入力先の指定方法には,ファイル・ディスクリプタと呼ぶ数字を用いる。たとえば,特定のファイルへのアクセスをファイル・ディスクリプタの5に割り当てるといった具合だ。 ファイル・ディスクリプタの0,1,2はシェルで予約されている。 「0」は標準入力と呼ばれ,シェルにどのように入力するかを指定できる。通常はキーボードからの入力になっている。 「1」は標準出力と呼ばれ,シェルの結果をどこに出力するかを指定できる