Windowsには、WSH/JScriptという快適な(時にひねくれた)、JavaScriptのバッチ処理言語があります。Macでも JavaScript で快適にバッチ処理が書きたいと思ったときに使うのが、Javaで記述されたJavaScript処理系である、Rhinoです。
そこで、ここでは、Mac OS X (Lion) で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のアーカイブをコピーしました。
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のインタプリタが起動するようになりました。
以下のようなスクリプトをひな形にスクリプトを作ってバッチ処理に利用します。
#!/usr/bin/env rhino /* 以下にJSのコード */ print("hello\n"); print("hello\n"); print("hello\n");
スクリプトにも実行権限をつけておけば、コマンド一発でJavaScriptのバッチが実行できます。