next up previous
: レポート課題4 : UNIX のテキスト・ファイル処理 : フィルター

awk

オーク awk は強力な文字列処理機能と、 C 言語に似た文法を併せ持つ言語処理系であるが、 フィルターとしての性格を持ったコマンドなので7、ここで紹介しておく。

多分 C 言語を知っている人には、 次のプログラムを理解するのは難しくないであろう (別に今理解する必要はない)。 先頭に ee080 というパターンを持つ行の第 1, 5, 7 フィールドを表示し、 第7フィールドが /bin/csh である数を数え、その割合を求めている。
\begin{itembox}[l]{awk スクリプトの例 --- \tt test.awk}\footnotesize\begin{verba...
...n'',
number, numofcsh, 100.0 * numofcsh / number);
}\end{verbatim}\end{itembox}

という awk のプログラム8 test.awk を使って、
./test.awk ee-list

とする。
(ちなみに、私はこの gawk を用いて、レポートや試験の採点処理をしている。)



Masashi Katsurada 平成13年6月7日