PAServer をコマンドラインから使う


PAServer をコマンドラインから使う

Facebook の Japan RAD Studio User Group に中川さんが

mac用のPAServerマネージャで追加したサーバーの情報は保存できない?

と投稿しました。
僕自身は PAServer マネージャを使っていなかったので、調べてみると確かに情報はオンメモリで管理されていて再起動するとクリアされていました。

Mac での PAServer マネージャの実行

メモ: PAServer マネージャを使って作成したサーバーは、マネージャを閉じた後には残りません。サーバーのインスタンスを存続させたい場合は、PAServer マネージャを動作させたままにしなければなりません。

これでは不便だろうということで、コマンドラインから起動することにしました。

PAServer のコマンドライン引数

コマンドライン引数の使い方については下記に詳しくあります。

プラットフォーム アシスタントのオプションの設定

ここでは、3つだけ簡単に紹介します。

引数 説明
port ポート番号を指定します
scratchdir スクラッチディレクトリを指定します
password パスワードを指定します(空の場合は文字なし)

これらを指定したコマンドを

#!/bin/sh
/Applications/PAServer-19.0.app/Contents/MacOS/paserver -port=5656 -scratchdir=/Users/jun/PAServer/scratch-dir -password=

と書くと、ポート番号は 5656 、スクラッチディレクトリは /Users/jun/PAServer/scratch-dir パスワードは無し、となります。
後は好みのコマンドラインをつけたこの文をファイルに保存するだけです。

shell コマンドファイルの作成

上記の PAServer 起動コマンドを run_paserver.command として保存します。
ファイル名は何でも良いのですが、拡張子は command とします。
こうすると macOS ではシェルコマンドであることを認識してダブルクリックすると実行するようになります。
ただ、このままでは権限の関係で起動できないのでターミナルを開いて

chdmod +x run_paserver.command

として、実行権限を付加してやります。

あとは、好みのコマンドライン引数や複数のバージョンの PAServer 用のコマンドファイルを作るだけです。

まとめ

macOS は BSD Unix がベースになっているので普通にコマンドが使えるのですが .command という拡張子にすることがポイントでした。