I/O Redirection

Takayuki Horisawa
Jan 18, 2017 · 5 min read

I/O Redirectionとはinput/output redirectionの略称である。lsのような多くのコマンドは、ディスプレイ上にoutputするものである。しかし、これは違う。
これは、特別な表記をすることによって、outputやinputをファイル、デバイスに送ることができる。

今回学習に使用したサイト
http://linuxcommand.org/lc3_lts0070.php


Standard streams

Unix系オペレーティングシステムにおいて、あらかじめ確立されている入出力チャネルである。

それらは、Standard Output(stdout)(標準出力)・Standard Input(stdin)(標準入力)・Standard Error(stderr)(標準エラー出力)等がある。

https://en.wikipedia.org/wiki/Standard_streams (EN)

https://ja.wikipedia.org/wiki/%E6%A8%99%E6%BA%96%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%A0 (JP)

Standard Output(標準出力)

プログラムが書き出すデータのストリームである。

lsで表示されるデータをfile_list.txtに上書き保存。つまり元々入っているデータは消去される。

lsで表示されるデータをfile_list.txtに追加。つまり、元々のデータに加え、lsのデータも出力される。

Standard Input(標準入力)

プログラムに入ってくるデータ(テキストであることが多い)である。

まず、sortとは、ファイルやディレクトリをソート(昇順に並び替える)することである。上記のOutputのように、実行するとディスプレイ上に表示される。

file_list.txtのソートデータがsorted_file_list.txtに保存(出力)される。

Pipelines(パイプライン処理)

処理要素を直列に連結し、ある要素の出力が次の要素の入力となるようにして、並行(必ずしも並列とは限らない)に処理させるという利用技術のこと。

I/Oで、Pipelinesと呼ばれるものをコマンドと一緒に使うことは、とても役に立ち、有力である。あるコマンドのアウトプットは、他のインプットに送られる。下図は一例である。

https://en.wikipedia.org/wiki/Pipeline (EN)

https://ja.wikipedia.org/wiki/%E3%83%91%E3%82%A4%E3%83%97%E3%83%A9%E3%82%A4%E3%83%B3%E5%87%A6%E7%90%86 (JP)

lsのアウトプットがlessに送られる。”| less”のように用いることで、どのコマンドも連結してコマンドを使うことが可能になる。

head

指定したファイルの先頭から指定した行数を表示(指定しないと10行)

du(abbreviated from disk usage)

ファイルとディレクトリの容量を表示

wc

テキスト・ファイルの行数、単語数、バイト数を表示

Filters

pipelinesとして、よく使われるプログラムの一つである。

uniq

入力ファイルから重複した行を削除、あるいは重複行を表示

grep

ファイルや標準入力から正規表現でマッチする行を探し出すコマンド

fmt

テキスト・データを整形し、横幅を最大幅以内に収めたり、余分なスペースを削除したりして、標準出力に出力する。

pr

印刷に適した形式にテキスト・ファイルを整形する。

tail

ファイルの末尾を表示する

tr

文字を一括変換する。

sed

文字列の置換,行の削除する。

awk

文字列の検索、抽出、変換及び置き換えする。

最後に

今回は以上で終了です。

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade