Sto cercando di utilizzare wget
per scaricare un file con un nome locale diverso e scaricare solo se il file sul server è più recente.wget :: rinominare i file scaricati e scaricare solo se più recenti
Quello che ho pensato che potevo fare era usare l'opzione -O
di wget
in modo da essere in grado di scegliere il nome del file scaricato, come in:
wget http://example.com/weird-name -O local-name
e che si combinano con l'opzione -N
che non scarica nulla tranne se il timestamp è più recente sul server. Per le ragioni esposte nei commenti qui sotto, wget
rifiuta di combinare entrambe le bandiere:
WARNING: timestamping does nothing in combination with -O. See the manual
for details.
tutte le idee su succinte work-around?
Qual è il tuo obiettivo? man wget spiega perché è inutile mischiare -N con -O, poiché: -O non è inteso per significare semplicemente "usa il nome file invece di quello nell'URL;" piuttosto, è analogo al reindirizzamento della shell. In breve, il file di output sarà sempre più recente rispetto al server e nulla verrà scaricato. –
Suppongo che la vera domanda sia "qual è il modo idiomatico in wget/bash per rinominare i file scaricati ** e ** scaricarli solo se sono più recenti sul server" - Ho riformulato la domanda per chiarire questo punto. –
@ecelis se ti capisco e cosa dice 'man wget', giusto, significa che il file '-O' viene sempre riscritto/troncato nel momento in cui esegui' wget' e quindi il suo timestamp è sempre ORA, nel qual caso il download non viene mai attivato. Destra? –