web-dev-qa-db-ja.com

起動時にAppleScriptを実行する(バックグラウンド)

やりたい起動時にMac OSXでAppleスクリプトを実行します。スクリプトは、ユーザーセッションの存続期間全体にわたって実行されます。

これを行うための最良の解決策は何ですか?

私のスクリプト:

on idle
    do Shell script "/usr/local/bin/wol -p 9 0:1d:63:19:b7:32"
    delay 120
end idle

どんな助けでも大歓迎です。

7
road242

スクリプトエディタでスクリプトを保存するときは、アプリケーションバンドルとして保存してから、ログインシステム環境設定のスタートアップ項目に追加します。

alt text

バックグラウンドで実行したい場合は、 iBackground Scripts を使用できます。これは、AppleScriptをバックグラウンドで実行するための無料のツールです。

alt text

10
John T

あなたの質問はAppleスクリプトの実行に関するものですが、スクリプトが実行しているのが2分ごとに/usr/local/bin/wolを実行している場合、より簡単な解決策は起動デーモンを使用することです。

ユーザーがログインしていなくても継続的に実行する場合は/Library/LaunchDaemonsで、ユーザーごとに実行する場合は~/Library/LaunchDaemonsで実行します(複数のインスタンスがある場合は複数のインスタンスが実行される可能性があることに注意してください)ユーザーがログインしました)。

少なくとも、ポップアップウィンドウが邪魔になることを心配する必要はありません。

8
Steve Folly

AppleScriptの方法の代わりに、私は通常、このような処理にlaunchdを使用します。 launchdはカスタマイズ可能で、非常に強力です。

http://developer.Apple.com/MacOsX/launchd.html

2
Mark Suman

「実行しますか...」ダイアログを防ぐには:スクリプトをアプリケーションバンドルとして保存しているときに、[名前を付けて保存]ダイアログの[起動画面]チェックボックスをオフにします。

1
JRobert