Existem duas maneiras de fazer isso usando o Curl .
Nesse primeiro método, você utilizaria o sinal -O
para gravar o arquivo com base no nome remoto da URL; nesse caso, seria mais provável gravar o arquivo no sistema como IMAGENAME.ISO?md5=hUhpyFjk7zEskw06ZhrWAQ&expires=1454811899
; observe como o valor da URL está contido por aspas duplas, pois &
e ?
podem ser mal interpretados como comandos Bash:
curl -O -L "http://some.ip.in.here/website.com/IMAGENAME.ISO?md5=hUhpyFjk7zEskw06ZhrWAQ&expires=1454811899";
Embora esse método tecnicamente "funcione", mas o nome do arquivo é confuso na melhor das hipóteses. Portanto, nesse outro método, você usaria o redirecionamento de saída - com >
seguido por um nome de arquivo após a URL - para produzir o conteúdo do arquivo em um arquivo chamado IMAGENAME.ISO
:
curl -L "http://some.ip.in.here/website.com/IMAGENAME.ISO?md5=hUhpyFjk7zEskw06ZhrWAQ&expires=1454811899" > "IMAGENAME.ISO";
Então, se você me perguntar, o segundo método funciona melhor para a maioria dos usos médios. Observe também que o sinalizador -L
está sendo usado em ambos os comandos; Esse comando diz ao Curl para seguir quaisquer links de redirecionamento que uma URL de download de arquivo possa ter, já que muitas vezes os arquivos em serviços de download redirecionam algumas vezes antes de chegar ao arquivo de carga útil de destino.