OS X: esiste un programma di pianificazione integrato?


10

Vorrei pianificare un'attività da eseguire con parametri in una data / ora specifica in futuro.

OS X include uno di questi strumenti (anche se è a riga di comando)? In caso contrario, ci sono strumenti gratuiti o relativamente economici là fuori per raggiungere questo obiettivo?

Risposte:


14

Mentre la risposta di KeithB è corretta, in realtà, cron è deprecata a favore dell'OS X specifico launchd .

I comandi da eseguire launchdsono descritti nei "plists" di Apple, o elenchi di proprietà, che sono in realtà solo file 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>

Detto questo, non è un modo molto facile da usare (né simile a un Mac) di programmare i comandi da eseguire. Questa domanda su SuperUser elenca alcune alternative della GUI, tra cui:

Lingon Screencap

editor launchd ($ 5 shareware)

Cattura schermo


3
Non è una giusta caratterizzazione che launchd sia "proprietario". Apple ha aperto con entusiasmo la fonte a launchd.macosforge.org ed è stato portato su FreeBSD.
ohmantics,

@ohmantics: Ok, punto giusto. "Specifica" è una descrizione migliore?
Josh,

Abbastanza vicino. :-) Apple l'ha creato, ma mi aspetto che vedrà un'adozione più ampia su sistemi operativi simili a BSD.
ohmantics,

@calavera: grazie per la modifica. Lo odio quando i documenti sui principali siti Web vengono rimossi in questo modo. Ho aggiunto un nuovo link che è purtroppo meno rilevante, che non menziona specificamente di cronessere deprecato :-(
Josh

np ... purtroppo Apple sembra farlo molto: /
Robert S Ciaccio il

4

Puoi anche avviare i flussi di lavoro di Automator con iCal se desideri semplicemente qualcosa di semplice. Altrimenti lo farei tramite launchd.


L'unico problema con iCal è che devi aver eseguito l'accesso per eseguire l'attività (corretta?)
Josh

sì, penso che devi fare il login per farlo. Vorrei raccomandare il processo di avvio su questo, ma alcune persone preferiscono semplicemente usare iCal e sono sempre
connesse

iCal è una soluzione molto più semplice! Guarda le schermate che ho pubblicato. Sicuramente vedo come potrebbero essere intimidatori :-)
Josh

solo per chiarimenti, i tuoi screenshot sono per l'installazione avviata, giusto?
jmlumpkin,

2

Esistono due strumenti da riga di comando Unix che fanno quello che vuoi. atti consentirà di pianificare un'attività da eseguire una volta in un momento specifico in futuro. Naturalmente, parte dell'attività potrebbe essere quella di pianificare un'altra attività.

cron consente di pianificare l'esecuzione regolare delle attività contemporaneamente, in base all'ora del giorno, al giorno della settimana, ecc.

Una cosa da notare è che entrambi questi non eseguiranno attività se la macchina non è in esecuzione nel momento in cui sono programmati. Esistono alternative, come anacron, che eseguiranno attività pianificate al successivo avvio della macchina.


1
Si noti che, per impostazione predefinita, il comando "at" è disabilitato. Usa "man atrun" per capire come abilitarlo.
Kristopher Johnson,

2

iCal può essere utilizzato per eseguire AppleScript , avviare applicazioni ed eseguire attività secondo una pianificazione.

Esistono limitazioni all'uso di iCal, ma è incluso in Mac OS X e relativamente facile da configurare. Le limitazioni e una guida visiva su come impostare un AppleScript programmato sono incluse nel link sopra.

Configurare un AppleScript programmato con iCal su Mac OS X

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.