OS X: Czy jest wbudowany program planujący?

10

Chciałbym zaplanować wykonanie zadania z parametrami o określonej godzinie / dacie w przyszłości.

Czy OS X zawiera takie narzędzie (nawet jeśli jest to wiersz poleceń)? Jeśli nie, czy istnieją jakieś darmowe lub stosunkowo tanie narzędzia, aby to osiągnąć?

glenneroo
źródło

Odpowiedzi:

14

Chociaż odpowiedź KeithB jest prawidłowa, faktycznie, cron jest przestarzałe na rzecz OS X specyficznego launchd .

Polecenia do uruchomienia launchdsą opisane w „listach” Apple lub listach właściwości, które są tak naprawdę tylko plikami XML:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
"http://www.apple.
com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>  
    <key>Label</key>
    <string>com.apple.periodic-daily</string>
    <key>ProgramArguments</key>
    <array> 
        <string>/usr/sbin/periodic</string>
        <string>daily</string>
    </array>
    <key>LowPriorityIO</key>
    <true/>
    <key>Nice</key>
    <integer>1</integer>
    <key>StartCalendarInterval</key>
    <dict>  
        <key>Hour</key>
        <integer>3</integer>
        <key>Minute</key>
        <integer>15</integer>
    </dict>
</dict>
</plist>

To powiedziawszy, nie jest to bardzo przyjazny dla użytkownika (ani podobny do Maca) sposób planowania poleceń do uruchomienia. To pytanie w SuperUser wymienia kilka alternatyw GUI, w tym:

Lingon Screencap

uruchomiono edytor (Shareware 5 USD)

Zrzut ekranu

Josh
źródło
3
Nie jest to uczciwa charakterystyka, że ​​wprowadzony na rynek jest „zastrzeżony”. Firma Apple chętnie go otworzyła na stronie launchd.macosforge.org i została przeniesiona do FreeBSD.
omantyka
@ohmantics: Ok, słuszny punkt. Czy „konkretny” jest lepszym opisem?
Josh
Wystarczająco blisko. :-) Apple to stworzyło, ale spodziewam się, że będzie szersze zastosowanie w systemach operacyjnych podobnych do BSD.
omantyka
@calavera: Dzięki za edycję. Nienawidzę tego, gdy dokumenty z głównych stron internetowych są w ten sposób usuwane. Dodałem nowy link, który jest niestety mniej odpowiedni, nie wspomina o tym, cronże jest przestarzały :-(
Josh
np ... niestety Apple wydaje się często to robić: /
Robert S Ciaccio,
4

Możesz także uruchomić przepływy pracy Automatora za pomocą iCal, jeśli chcesz czegoś prostego. W przeciwnym razie zrobiłbym to poprzez uruchomienie.

jmlumpkin
źródło
Jedynym problemem związanym z programem iCal jest to, że musisz się zalogować, aby uruchomić zadanie (poprawne?)
Josh
tak, myślę, że musisz być zalogowany, aby to zrobić. Poleciłbym nad tym uruchomiony proces, ale niektórzy wolą po prostu używać iCal i są zawsze zalogowani.
jmlumpkin
iCal to znacznie łatwiejsze rozwiązanie! Zobacz napisane przeze mnie czapki ekranowe. Z pewnością widzę, jak mogą być zastraszające :-)
Josh
tylko dla wyjaśnienia, twoje zrzuty ekranu są do uruchomienia instalacji, prawda?
jmlumpkin,
2

Istnieją dwa narzędzia wiersza polecenia systemu Unix, które robią, co chcesz. atpozwoli Ci zaplanować wykonanie zadania raz w określonym czasie w przyszłości. Oczywiście częścią zadania może być zaplanowanie innego zadania.

cron pozwala zaplanować zadania, które będą regularnie wykonywane w tym samym czasie, na podstawie pory dnia, dnia tygodnia itp.

Należy zauważyć, że oba te zadania nie będą uruchamiać zadań, jeśli komputer nie działa w czasie, gdy są zaplanowane. Istnieją alternatywy, takie jak anakron, które uruchamiają zaplanowane zadania przy następnym uruchomieniu komputera.

KeithB
źródło
1
Zauważ, że domyślnie polecenie „at” jest wyłączone. Użyj „man atrun”, aby dowiedzieć się, jak to włączyć.
Kristopher Johnson
2

iCal może być używany do uruchamiania skryptów AppleScript , uruchamiania aplikacji i wykonywania zadań zgodnie z harmonogramem.

Istnieją ograniczenia w korzystaniu z iCal, ale jest on dołączony do Mac OS X i stosunkowo łatwy w konfiguracji. Ograniczenia i wizualny przegląd konfiguracji zaplanowanego AppleScript znajdują się w powyższym linku.

Konfigurowanie zaplanowanego AppleScript z programem iCal w systemie Mac OS X

Graham Miln
źródło