Como combinar as opções '-i file' e '-O filename' do wget?

1

wget pode ser alimentado com -i inputFileURLList e também pode usar um nome de arquivo personalizado com -O customArbitraryFileName .

Como posso combinar esses dois recursos para que eu os alimente com uma lista de URL contendo o arquivo com um nome de arquivo personalizado para cada um?

    
por pedyram 16.07.2017 / 11:10

2 respostas

0

Escreva seu próprio script de shell trivial e use-o como ./get-them.sh < get-then.list

script de shell get-them.sh

#!/bin/sh
while read FILE URL; do
   wget -O "$FILE" -- "$URL"
done

arquivo de entrada get-them.list

file1 https://unix.stackexchange.com/
file2 https://stackexchange.com/
    
por 16.07.2017 / 11:47
1

Supondo que o arquivo de entrada se parece com

http://url.to.import
file.to.save.as

para processar o arquivo de entrada uma vez:

{ IFS= read -r url; IFS= read -r filename; } < input.file
wget -i "$url" -O "$filename"

Estou usando chaves para que os comandos de leitura sejam executados no shell atual e, portanto, as variáveis existam no shell atual.

Se você precisa desesperadamente de um one-liner

wget -i "$(sed -n 1p input.file)" -O "$(sed -n 2p input.file)"
    
por 16.07.2017 / 12:39