awk

オーク / エー・ダブル・ケー

 テキスト処理が得意なインタプリタ型言語の1つであり、1977年に設計、作成された。awkの名称は、開発者である、A. V. Aho、B. W. Kerninghan、P. J. Weinbergerの3人のラストネームの頭文字をとって名付けられた。

 当初は、UNIXのツールであるgrepとsedを文書以外も取り扱えるように一般化する実験の一環として作成された。1985年、より大きなプログラムの記述が可能になるように拡張され、UNIX System V Release 3.1の一部として実装された。現在ではUNIX系のOSはもちろんのこと、DOSやWindowsにも移植されている。GNUによるawkの実装としてはgawkがあり、Free Software Foundation(FSF)から配布されている。

 awkでは、C言語に類似した構文規則が採用されている。そのためsedなどと比べて汎用言語に近いという特徴がある。テキスト処理機能や計算機能を持ち、フィルタとしての利用が容易である。またプログラミング言語としてCGIの作成などに利用することもできる。

 動作の基本は、処理対象のファイルを1行読み込み、記述されたスクリプトに従った処理を行い、結果を出力するという流れである。

 awkのスクリプトの基本形は、

/パターン/ {アクション

という構造になっており、読み込んだ処理単位に対して、“パターンとマッチすればアクションを行う”という処理を行う。

関連記事

関連用語

UNIX
System V
sed
GNU

リンク

Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

アイティメディアの提供サービス

キャリアアップ