Linux のファイルについて理解しよう&フィルタとパイプ

パイプとフィルタ

Linux のはなし


僕らが便利に使っているレンタルサーバーのOSは、大きく分けて Unix/LinuxWindowos Server の2種類があります。
多くのレンタルサーバーが Linux OS を使っています。 → レンタルサーバ20社150以上のプランを比較【料金・仕様の比較表】 を参照してください。

Linux は UNIX互換のOSです。
研究機関で広く使われていた UNIX のファイルシステムなどを参考にしてマイクロソフトの MS-DOS や Windows が作られました。

UNIX/Linux システムにはプログラム開発用ツールが豊富に用意されています。UNIX/Linux の達人達は、これらのツールを組み合わせて効率よくプログラムやデータ、文書の処理を行います。

Linux のファイルについて


Windowsの「フォルダー」は Linux の「ディレクトリ」にあたります。
ディレクトリーはツリー状に配置できます。

今でこそ「ディレクトリー(フォルダー)」は一般的に使われるようになりましたが、この仕組みが作られた時はプログラムやデータ、文書を管理する者にとって画期的なものでした。

Linux のフィルタとパイプ


Linux の入出力は、標準入力からプログラムやデータ、文書を読み込み処理を行い標準出力に結果を出力するプログラムが多数用意されています。これらをフィルタといいます。

フィルタから標準出力に出されたプログラムやデータ、文書をつなぐ機能をパイプと呼び、パイプをつなげて複雑な処理を行います。
文章だけでは理解しにくいので、例を挙げます。

青森県、岩手県、宮城県、秋田県、山形県、福島県 と書かれたファイルがあります。 ( motofile.txt )

というデータ(文書)があります。

cat motofile.txt とコマンドを入力すると

青森県、岩手県、宮城県、秋田県、山形県、福島県

と表示されます。

cat motofile.txt | sed -e ‘s/$/です。/g’ と入力した結果は次のとおりです。

青森県、岩手県、宮城県、秋田県、山形県、福島県です。

cat motofile.txt | sed -e ‘s/$/です。g’ | sed -e ‘s/、/です。\n/g’

青森県です。
岩手県です。
宮城県です。
秋田県です。
山形県です。
福島県です。

cat motofile.txt | sed -e ‘s/$/です。g’ | sed -e ‘s/、/です。\n/g’ > target.txt

で下記の内容の target.txt が作成されます。

青森県です。
岩手県です。
宮城県です。
秋田県です。
山形県です。
福島県です。

 
Linux の標準入力、標準出力やフィルタ、パイプという概念のおかげで、プログラムやデータ、文書処理をする時にいちいちプログラムを作成しなくても簡単にコマンドラインから操作ができるようになっています。

Linux の勉強を一緒にしませんか?


このサイトでは、Linux を便利に使いこなすためのノウハウをお伝えしていきます。

Linux 面白そうだなぁ。

とか

Linux 出来たら便利かも・・・。

と思ったら、是非 またこのサイトを見に来てくださいね。

コメントは受け付けていません。