Considere usar em curl
vez de wget
:
curl -o "$file" -z "$file" "$uri"
man curl
diz:
-z
/ --time-cond
<expressão da data>
(HTTP / FTP) Solicite um arquivo que foi modificado posteriormente à data e hora especificadas ou que foi modificado antes dessa hora. A expressão de data pode ter todos os tipos de cadeias de datas ou, se não corresponder a nenhuma interna, tenta obter a hora de um determinado nome de arquivo.
Se $file
não existir necessariamente, você precisará -z
condicionar o uso do sinalizador, usando test -e "$file"
:
if test -e "$file"
then zflag="-z '$file'"
else zflag=
fi
curl -o "$file" $zflag "$uri"
(Observe que não citamos a expansão $zflag
daqui, pois queremos que ela seja dividida em 0 ou 2 tokens).
Se o seu shell suportar matrizes (por exemplo, Bash), teremos uma versão mais segura e mais limpa:
if test -e "$file"
then zflag=(-z "$file")
else zflag=()
fi
curl -o "$file" "${zflag[@]}" "$uri"