何かしらのツールを作ろうと思ったときに、ファイルの一覧を利用したいという場面は多くあります。しかも、そのフォルダーだけでなく、サブフォルダーまで含めた全てのファイルを再帰的に処理したいというケースも多くあります。そこで、今回は、Webサイトのサイトマップツールの作成を通して、ファイルの一覧を取得する方法を紹介します。
今回のメインプログラムはWSH/JScriptで作ります。しかし、実際には、Javaで実装されたJavaScript処理系のRhinoを利用して作ります。どういうことかと言うと、JScriptからRhinoを実行するのです(これまでもRhinoを利用してプログラムを作ってきましたが、バッチファイルからRhinoを実行するものでした)。今回は、JScriptから起動する方法を紹介します。
Rhinoはここからダウンロードすることができます。
Rhino本体(js.jar)と同じフォルダーに、以下のプログラムを「win-makeLink.jse」という名前で保存します。こちらからプログラム一式をダウンロードできます(アーカイブにjs.jarも梱包しています)。
サイトマップを作りたいフォルダーを、「win-makeLink.jse」の上にドラッグ・アンド・ドロップします。すると、そのフォルダーの中に、「sitemap.html」という名前のHTMLファイルを保存します。
プログラム一式には、Mac OS X用の「mac-makeLink.sh」のプログラムも含んでいます。MacでもWindowsでも同じく動くツールプログラムを作れるのが、Rhinoの利点です。