Windowsには、WSH/JScriptという快適な(時にひねくれた)、JavaScriptのバッチ処理言語があります。Macでも JavaScript で快適にバッチ処理が書きたいと思ったときに使うのが、Javaで記述されたJavaScript処理系である、Rhinoです。

そこで、ここでは、Mac OS X (Lion) でRhinoを快適に利用する方法を紹介します。

(1) Rhinoのインストール *

RhinoはMozillaのページよりダウンロードできます。

ダウンロードしたら解凍して、適当なフォルダにメインファイルである、js.jarを配置してJavaのクラスパス(CLASSPATH)を通します。

Lionには、はじめから、curlがインストールされているので、ターミナルから、以下のように入力すると手軽にダウンロード&セットアップできるでしょう。

cd ~/
curl -O ftp://ftp.mozilla.org/pub/mozilla.org/js/rhino1_7R2.zip
unzip rhino1_7R2.zip
mv rhino1_7R2 Applications/
rm rhino1_7R2.zip

ここでは、/User/xxx/ApplicationsディレクトリにRhinoのアーカイブをコピーしました。

(2) 簡単に起動できるrhinoコマンドを用意する *

RhinoはJavaから起動しなくてはならないので、ちょっと起動が面倒です。そこで、手軽に起動できる、Rhinoコマンドを用意しておきます。ここでは、以下のようなファイルを作成し、「rhino」という名前でパスの通ったディレクトリに保存します。

#!/bin/bash
# rhino
export CLASSPATH=~/Applications/rhino1_7R2/js.jar
java org.mozilla.javascript.tools.shell.Main $*

そして、実行権限をつけます。

chmod 755 rhino

これで、rhinoとタイプすると、rhinoのインタプリタが起動するようになりました。

(3)スクリプトファイルを使ってバッチ処理をする *

以下のようなスクリプトをひな形にスクリプトを作ってバッチ処理に利用します。

#!/usr/bin/env rhino
/* 以下にJSのコード */
print("hello\n");
print("hello\n");
print("hello\n");

スクリプトにも実行権限をつけておけば、コマンド一発でJavaScriptのバッチが実行できます。