Usa cron per acquisire lo schermo su Mountain Lion

2

Voglio impostare cron per acquisire il desktop corrente ogni ora:

screencapture -Cd -tjpg ~/Desktop/screen-'date +"%Y%m%d-%H%M"'.jpg

Mi sono stancato questo metodo ma sembra non funziona su Mountain Lion. Ho anche provato Lingo ma senza fortuna. Qualche idea?

    
posta sparanoid 25.10.2012 - 22:33
fonte

1 risposta

3

cron si comporta in modo leggermente diverso da un prompt standard, motivo per cui non sta facendo quello che ti aspetti. Ci sono due problemi con il comando così com'è:

  • Poiché non analizza la variabile di ambiente PATH uguale alla shell, cron non sa dove screencapture è. Devi specificare il percorso completo, /usr/sbin/screencapture .
  • Come indicato in pagina man crontab (5) , cron tratta % come carattere di nuova riga:

    Percent-signs (%) in the command, unless escaped with backslash (\), will be changed into newline characters, and all data after the first % will be sent to the command as standard input.

    Quindi devi sfuggire a ogni % con \ per ottenere il risultato desiderato.

Questa voce crontab ti darà una schermata ogni ora, nell'ora:

0 * * * * /usr/sbin/screencapture -Cd -tjpg ~/Desktop/screen-'date +"\%Y\%m\%d-\%H\%M"'.jpg

Registrazione errori cron

Per inciso, se hai problemi con cron, controlla la tua posta di sistema eseguendo il comando mail in Terminale. Non è molto ovvio, ma per impostazione predefinita cron invia messaggi di errore che possono fornire un punto di partenza per capire cosa non va.

    
risposta data 26.10.2012 - 00:00
fonte

Leggi altre domande sui tag