AutomatorでUNIXコマンドを管理者権限で実行する

Automatorでは、「シェルスクリプトを実行」というアクションでUNIXコマンドを実行する事ができ、ワークフローでApacheTomcat等のサーバを起動することが可能です。

サーバソフトウェアの起動には管理者権限が必要な場合が多いのですが「シェルスクリプトを実行」アクションではパスワード入力に問題があります。このような場合は「シェルスクリプトを実行」ではなく「AppleScriptを実行」からコマンドを呼び出します。

f:id:paulownia:20070312015731j:image

do shell script command with administrator privilegesとすると、ワークフロー実行時にOS標準のパスワード入力ボックスが表示され、管理者権限でコマンドが実行できます。

f:id:paulownia:20070312015856j:image

おまけで最後にテキスト読み上げアクションを追加すると、既にApacheが起動している場合、「httpd (pid xxx) already running」というメッセージを読み上げるようになり、ちょっと面白くなります。