|
Contents
1 はじめに 2 一行の中にある世界 3 Awkのうごかしかた 4 短いプログラム 5 プログラム例 6 フォルダの検査 6.1 はじめに 6.2 ファイル情報のみを抽出する 6.3 ファイル名を抽出する 6.4 その他のデータを整形する 6.5 フォルダ検査の結果とまとめ 7 2つのファイルの比較と連想配列 7.1 はじめに 7.2 2つのファイルを読み込む 7.3 連想配列による比較 8 まとめとバッチファイル化 9 おわりに 10 参考文献・サイト |
1 はじめにそもそも、awkなんて言語を知ったのはかなりの偶然でした。数年前に大学の生協でコンピュータ本をあさっていた私が、たまたま手にした一冊の本がきっかけでした。それが「プログラミング言語awk」という本だったのです。 当時、私はある簡単なデータベースのような処理を実現させるために、pascalやらaccessやらを囓りながら悪戦苦闘していましたが、これといってうまい実装ができずにいました。Pascalで組むには荷が重かったし、リレーショナルデータベースは勉強不足のために設計しづらく、ちょっと作っては放り出していました。 そんな中、「プログラミング言語awk」の見出しには、「テキスト処理」「データベース」といった言葉が踊っていたので、せっかくなので使ってみよう、と思い、その本を購入したわけです。インターネットなんて便利なモノを使いだす前のことだったのですが、幸い、手元にはあのvecterのオンラインソフト何千本とかいうCD-ROMが(懐かしいのう・・)あったので、そいつでawkのシステムをパソコンに放り込みました。 さて、準備完了。Awkで最初に出てきたプログラムは、こんなモノでした: テキストで作成した表から、各行について、1) 一列目、 例を示してみましょう。こういう変換です。
さて、普通はどうやって解くでしょうか。PascalやCでやるとしたら、テキストファイルを開いて、スペースまで読み込むことでそれぞれの項目を抽出する、という作業が 必要です。ですからこんな簡単なことでも結構ソースは大きくなります。 ではawkで書くとどうなるかといいますと、
この一行だけです。はじめ見たときは目が点になったのは言うまでもありません。この気楽さがawkの魅力です。 |