AWKプログラムを簡単に書く方法 - AWK
o パターンを3種類覚えます。o そして、必要な機能を探して、パターンの中に並べます。
o 上手に書けたと思ったら、実行してみます。
**** 覚えるパターン 3つ
o BEGIN パターン = プログラムの先頭で「1回だけ」実行したい時に、追加します。
--------
BEGIN {
# ファイルを読み込む前に実行します。
}
--------
+ # の行は、コメントです。
+ 実際には、# の行に、そこで行いたい事を書きます。
o 先頭に何も書いていないパターン = ファイルを1行ずつ読み込みたい時に、追加します。
--------
{
# 1行毎に実行します。くるくる回ります。
}
--------
o END パターン = プログラムの最後に「1回だけ」実行したい時に、追加します。
--------
END {
# ファイルを全部読み込んだ後に実行します。
}
--------
**** 実行例
o ファイル sample.awk
--------
{
print $0 "、おはようございます。";
}
END {
print "皆さん、今日もよろしくお願いします。";
}
--------
+ 行末のセミコロンは無くても動きます。C言語風にしてみました。
+ $0 には、読み込んだ 1行分のデータが入っています。
+ ファイル名の後ろに拡張子(.txt など)が表示されていない場合は、「ファイルの拡張子を変更可能にする方法」
o ファイル in.txt
--------
ミクさん
リンちゃん
レン君
ルカ様
--------
o 実行コマンド
--------
gawk -f sample.awk in.txt
--------
+ Windowsの場合、gawk の部分は、gawk.exe を呼び出すよう、必要に応じて書き換えます。
+ 詳しい動かし方は、「AWKプログラムを別ファイルに書いて実行する方法」
**** メモ
o この手順を覚えたら、後は、必要な機能を探して、パターンの中に並べるだけです。
o パターンは、これらの他にもあります。3つのパターンに慣れてきたら、他のパターンも覚えてみます。
**** 確認した処理系
o Gawk on Windows 3.1.7
o Gawk for Windows 3.1.6
o mawk MBCS (32bit版) 1.3.3
o Mawk for Windows 1.3.3
o original = the one true awk(updated May 1, 2007)
==
関連ページ:
▼AWKのパターンと制御文(▼ABC順)
▼AWKプログラムを書く(▼ABC順)
▼AWK
▼制作メモ
> AWKで最も短いプログラム
AWKプログラムの基本パターン
AWKの関数名と変数名を区別する方法
タブ区切りでファイルを読み込む