Sqawk を使う

Sqawk という聞き慣れない言語があります。 「Simple, Quick Awk」の略だそうですが、PHP のように Web ページへ組み込むことができる awk です。 Web ページに組み込むことができる言語は多く存在していますが、awk を使うことの最大のメリットは awk 自体が 1 つの実行ファイルだけで動作でき、Sqawk 自体が awk スクリプトなので、インストールが簡単なところが挙げられます。 今回はこの Sqawk を使ってみます。

  • 作業ディレクトリで sqawk というディレクトリを作成します。
$ mkdir sqawk
$ cd sqawk
  • ここから現時点で最新の sqawk.1.2.tar.gz をここにダウンロードします。
  • これを展開します。
$ tar -xzvf sqawk.1.2.tar.gz
  • Fedora9 の場合だとそのままの install.sh ではインストールできませんので、以下の config を指定しているところを修正します。
config=`httpd -V | grep SERVER_CONFIG_FILE|cut -f2 -d\"`

config=/etc/httpd/conf/httpd.conf
  • root 権限でインストールします。
$ sudo ./install.sh
  • 次に httpd.conf (Fedora9 の場合、/etc/httpd/conf/httpd.conf) を編集します。IfModule mod_mime.c セクションで以下の部分を加えます。
AddHandler embedded-awk .ahtml
  • httpd.conf のトップレベルで以下の部分を加えます。
Action embedded-awk /cgi-bin/sqawk
  • 保存、終了し、httpd を再起動します。
$ sudo /etc/rc.d/init.d/httpd restart

これで動作します。

サンプルスクリプトが 1 つだけ DocumentRoot にインストールされますが、以下のようなコードです。

<html>
<body>
<? print "Hello, World!" ?>
</body>
</html>

見た目も PHP ライクですが、これで Hello World です。 インストールされてしまったので、ここで結果を見ることができます。

サブディレクトリの examples の中には他にもいくつかのサンプルコードが入っています。 中でも面白いのが GET での結果がフィールドであるかのように認識されるところでしょうか。

応用次第では awk のような簡単な言語が Web 組み込み言語として使えますので、PHP のような使い方もできると思います。

tag_nawk.pngtag_nawk.pngtag_nawk.pngtag_nawk.png