プログラミング言語AWK
A. V. エイホ(Alfred V. Aho)、P. J. ワインバーガー(Peter J. Weinberger)、B. W. カーニハン(Brian W. Kernighan)著
足立高徳 訳
新紀元社
ISBN 4-7753-0249-3
第1章 AWK入門
1-1 手はじめに
AWKプログラムの構造
AWKプログラムの実行
エラー
1-2 単純な出力
全部の行の印字
特定の欄の印字
欄の数のNF
計算と印字
行番号の印字
文章の出力
1-3 凝った出力
欄の模様がえ
出力の整列
1-4 選択
比較による選択
計算による選択
文の中身による選択
パターンの組み合わせ
データの検証
BEGINとEND
1-5 AWKによる計算
数え上げ
和と平均の計算
文章の操作
文字列の隣接
最後の入力行の印字
組み込み関数
行数,単語数,文字数の数え上げ
1-6 制御文
If-Else文
While文
For文
1-7 配列
1-8 便利な「一行野郎」たち
1-9 お次は何?
第2章 AWK言語
入力ファイルcontries
プログラムの書式
2-1 パターン
BEGINとEND
パターンとしての式
文字列照合パターン
正規表現
複合パターン
範囲を示すパターン
パターンのまとめ
2-2 アクション
式
制御文
空文
配列
2-3 ユーザ定義関数
2-4 出力
print文
出力区切子
printf文
ファイルへの出力
パイプへの出力
ファイルとパイプの閉鎖
2-5 入力
入力区切子
副行レコード
getline関数
コマンド行での変数への代入
コマンド行引数
2-6 他のプログラムとの組み合わせ
system関数
AWKプログラムをシェル・コマンドに
2-7 まとめ
第3章 データ処理
3-1 データ変換と導出
コラムの和
百分率と分位の計算
コンマつきの数
固定欄入力
プログラムの相互参照検査
書式付出力
3-2 データの検証
対応の取れた区切り子
パスワード・ファイルの検査
データ検証プログラムの生成
どっち版のAWK?
3-3 BUndleとunbndle
3-4 複行レコード
空行で区切られたレコード
複行レコードの処理
ヘッダとトレイラつきのレコード
名前と値からなるデータ
3-5 まとめ
第4章 レポートとデータベース
4-1 レコードの生成
単純なレポート
もう少し複雑なレポート
4-2 パッケージ化された質問とレポート
定型書簡
4-3 関係データベース・システム
自然和
relfile
AWKもどきの問い合わせ言語q
qからawkへの翻訳プログラムqawk
4-4 まとめ
第5章 語句処理
5-1 文章の無作為生成
無作為選択
決まり文句の生成
乱れ文
5-2 対話的文章操作
能力テスト:算数
能力テスト:クイズ
5-3 文章処理
単語の数え上げ
文書整形
相互参照の一貫性保持
KWIC検索の生成
索引の生成
5-5 まとめ
第6章 小さな言語
6-1 アセンブラとインタープリタ
6-2 グラフ生成言語
6-3 整列生成プログラム
6-4 逆ポーランド電卓
6-5 普通の電卓
6-7 まとめ
第7章 アルゴリズムの実験
7-1 整列
挿入法
分割法
整列2分木法
7-2 輪郭分析
7-3 位相整列
広さ優先の位相整列
深さ優先の探索
深さ優先の位相整列
7-4 Make:ファイル更新プログラム
7-5 まとめ
第8章 エピローグ
8-1 言語としてのAWK
8-2 効率
8-3 結論
付録A AWKのまとめ
付録B 演習問題回答