L'OP vuole conoscere il codice di stato. Spesso quando si scarica un file si vuole anche avere un'idea delle sue dimensioni, quindi utilizzo prima curl per mostrare il codice di stato e le dimensioni del file e poi spengo il file verboso e diretto al luogo e al nome che voglio:
curl -R -s -S -w "\nhttp: %{http_code} %{size_download}\n" -o /Users/myfiles/the_local_name.html http://archive.onweb.com/the_online_name.html
Poi aspetto il completamento di curl
wait ${!}
prima di eseguire il comando successivo. Quanto sopra, se usato in uno script di molti comandi come quello precedente, dà una bella risposta come:
http: 200 42824
http: 200 34728
http: 200 35452
Si noti che -o in curl deve essere seguito dal percorso completo del file + nome del file. Questo permette di salvare i file in una struttura di nomi sensata quando li si d/l con curl. Si noti anche che -s e -S usati insieme silenziano l'output ma mostrano errori. Si noti anche che -R cerca di impostare il timestamp del file su quello del file web.
La mia risposta si basa su ciò che @pvandenberk ha suggerito originariamente, ma in aggiunta salva effettivamente il file da qualche parte, invece di indirizzarlo semplicemente a /dev/null.