Pbpaste non sembra funzionare come previsto quando lo eseguo da un lavoro cron.
Ho un applecript che apre un file PDF in Anteprima e gli invia il comando copia e poi chiude Anteprima. Quindi vorrei incollarlo in un file, pbpaste> pasta.txt. Tutto funziona alla grande, quando lo eseguo come me stesso.
Tuttavia, se lo inserisco come compito in crontab -e, viene eseguito correttamente e persino creato il file di output, ma i contenuti sono vuoti. È come se qualsiasi contesto in cui si sta svolgendo la corsa abbia un diverso concetto di clipboard.
Il mio crontab è così:
* * * * * cd /Users/bemmu/Public;osascript yeah.script
E yeah.script è così:
do shell script "open tiliote.pdf"
delay 2
tell application "Preview"
activate
delay 2
tell application "System Events" to keystroke "a" using {command down}
delay 2
tell application "System Events" to keystroke "c" using {command down}
delay 2
tell application "System Events" to keystroke "q" using {command down}
delay 2
end tell
do shell script "pbpaste > pasta.txt"
Il risultato atteso è che pasta.txt conterrà il file PDF in testo ed è quello che succede se eseguo questo script a mano. Tuttavia, se cron lo esegue, pasta.txt viene creato ma non contiene nulla (la dimensione è 0).
Vedo che la copia ha sicuramente successo quando viene eseguita da cron, poiché posso incollarla da sola in seguito. È solo che pbpaste non sembra funzionare da cron.