Hai un paio di opzioni per affrontare questo: script AppleScript e Bash (Terminale). Poiché questo deve accadere una volta al giorno (ovvero pianificato ) e si desidera garantire che il file venga scaricato nel momento in cui si effettua l'accesso in modo che possa essere lì quando si inizio e poi ancora una volta ogni notte a mezzanotte, lo farei a Bash.
Crea lo script
Lo script farà due cose:
- Scarica l'immagine
- Imposta come immagine di sfondo
Lo script è abbastanza semplice. Richiede due argomenti: l'URL e la posizione in cui salvare il file. Lo scaricherà quindi nella posizione della cartella:
#!/bin/bash
#Bash Script to Download Forecast and Set as desktop background
#User Defined VARs below:
#URL to fetch image
url="http://www.cleardarksky.com/c/YerkesObILcsk.gif?c=2239204"
#Picture file Location
picFile="/Users/Thomas/Pictures/test.gif"
#Command to retrieve picture and save to defined location
curl -o "${picFile}" "$url"
exit
Salvalo in una posizione comoda; dargli un nome ovvio come getSkyForecast.sh
. Assicurati di rendere eseguibile lo script - chmod +x getSkyForecast.sh
Se non lo fai, lo script non verrà eseguito.
Pianifica lo script
Quanto segue è un po 'più complesso, perché verrà eseguito al login e ogni 24 ore.
Successivamente, lo script deve essere avviato con launchd
. Per fare ciò, è necessario un plist
(file XML che descrive il lavoro)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.user.getSkyForecast</string>
<key>ProgramArguments</key>
<array>
<string>/Users/USERNAME/Path_to_Scripts/getSkyForecast.sh</string>
<key>RunAtLoad</key>
<true/>
</array>
<key>StartCalendarInterval</key>
<array>
<dict>
<key>Hour</key>
<integer>00</integer>
<key>Minute</key>
<integer>00</integer>
</dict>
</dict>
</plist>
Salva questo file come com.user.SkyForecast
e copialo nella directory ~/Library/LaunchAgents
.
Caricalo con il comando:
launchctl load com.user.SkyForecast
Imposta l'immagine di sfondo
La cosa più semplice da fare è andare in Preferenze di Sistema e impostare l'immagine di sfondo su questo file (eseguire lo script manualmente prima di creare il file). Quando lo script viene eseguito, cambierà il file, non il nome, in modo che l'immagine del desktop cambierà automaticamente.