launchd
是執行此操作的正確方法(crontab
在Mac上已被棄用,而launchd
已被棄用)。你創建你的程序(可執行文件名稱,參數等)的信息的plist文件,並且它的一部分將(在瀏覽器和未經考驗的預警類型):
<key>StartCalendarInterval</key>
<dictionary>
<key>Hour</key>
<integer>12</integer>
</dictionary>
<key>StartInterval</key>
<integer>7200</integer>
<key>LimitLoadToSessionType</key>
<string>Aqua</string>
<key>RunAtLoad</key>
<true/>
- 的
StartCalendarInterval
應在12小時的頂端運行你的程序(所以中午)。
- 的
StartInterval
應該運行您的程序,每2小時(=7200秒)
- 的水上會議開始時,
LimitLoadToSessionType
只加載程序(用戶實際登錄到窗口服務器(所以這將阻止加載如果用戶在ssh
的)
- 的
RunAtLoad
告訴可執行文件運行時加載的plist中時,這與LimitLoadToSessionType
相結合,應該啓動可執行文件,當用戶登錄。
這有可能是StartInterval
和StartCalendarInterval
是米非常獨特。如果是這樣的話,你可以取出StartInterval
鍵,改變StartCalendarInterval
東西:
<key>StartCalendarInterval</key>
<array>
<dictionary>
<key>Hour</key>
<integer>0</integer>
</dictionary>
<dictionary>
<key>Hour</key>
<integer>2</integer>
</dictionary>
<dictionary>
<key>Hour</key>
<integer>4</integer>
</dictionary>
<dictionary>
<key>Hour</key>
<integer>6</integer>
</dictionary>
...
<dictionary>
<key>Hour</key>
<integer>12</integer>
</dictionary>
...
<dictionary>
<key>Hour</key>
<integer>22</integer>
</dictionary>
</array>
欲瞭解更多信息,請參閱man launchd.plist
。
這屬於超級用戶。 – jer 2010-11-26 18:15:26