フィルタ型シェルスクリプト

catコマンドはファイルの内容を見るために使われることも多いが、元来はファイルを結合(concatenate)するためのコマンドである。このコマンドはフィルタ型コマンドの基本形ともいえる仕様になっていて、引数を指定すればファイルを読み込み、引数がない場合は標準入力を読み込むようになっている。そのため、フィルタ型のシェルスクリプトを書く時にはcatを入力処理に使うのが簡単である。

#!/bin/sh
line=1
cat $* | while read text
do
  echo "$line: $text"
  line=$((line+1))
done