AWKの動作確認(Linux編)

AWKはLinuxディストリビューションに標準で装備されていることが多く、インストール作業が不要である。

ここではAWKのプログラム実行ができるようにする。

AWKとは

AWKは1977年に開発された、インタプリタ型のスクリプト言語。

元々はsedやgrepのように、テキストファイルを処理するツール(コマンド)として開発されたもので、区切り文字(空白、カンマ、タブなど)があるテキストデータの処理を念頭に置いた仕様になっている。

開発された当時はUNIXに付属していたものだったが、今では複数のプラットフォームに移植されていて、種類もいくつかに派生している。

AWKの種類

AWKの種類について、以下のようなものがある。
性能を求める場面ならmawk、多機能を求める場面ならgawkを使えば良いと思う。

・awk(旧版)
1980年代まで開発されていたもの。

・nawk
1980年代後半のバージョンアップで登場したもの。
旧版と区別するため「new AWK」からnawkと呼ぶようになった。

・gawk
GNUプロジェクトによって開発されたAWK。
旧版から多くの機能拡張がされており、LinuxディストリビューションではこれをデフォルトのAWKとしていることが多い。

・mawk
機能的にはgawkと比べると乏しいが、バイトコードに変換してから処理実行されるため、他のAWKよりも高速に動作することが多い。

AWKのインストール操作

以降のインストール操作は、以下の環境をもとに記載している。
Ubuntu 22.04


インストール

Linux環境には、AWKが標準でインストールされている事が多い。
バージョン表示をしてみて、バージョンが表示されるなら、インストール作業は不要である。
ここでは、gawkとmawkをインストールする。

# パッケージを検索
sudo apt search "awk"
sudo apt list | grep "awk"

# インストール
sudo apt install -y gawk
sudo apt install -y mawk

# バージョン表示
gawk -W version
mawk -W version

動作確認(ファイル指定)

# ソースコードファイルを作成
vi testawk.awk

# 動作確認用のサンプルプログラム
BEGIN {
  print "Hello AWK"
}

# ファイル指定で実行
gawk -f testawk.awk
mawk -f testawk.awk

動作確認(コマンドで直接実行)

簡易的な処理なら、コマンド内で直接実行できる。

# コマンドで直接実行
gawk 'BEGIN{ print "Hello AWK" }'
mawk 'BEGIN{ print "Hello AWK" }'

タイトルとURLをコピーしました