Как объединить опции '-i file' и '-O filename' из wget?

wget можно загрузить с помощью -i inputFileURLList а также использовать имя пользовательского файла с -O customArbitraryFileName .

Как я могу объединить эти две возможности, чтобы я подавал их с помощью файла, содержащего список URL-адресов, с пользовательским именем файла для каждого?

  • Невозможно wget из github, sslv3 ошибка рукопожатия
  • Как сделать рекурсивную загрузку с помощью gwget (wget frontend)?
  • Рекурсивная загрузка всех файлов из дочернего каталога веб-сайта с помощью wget
  • Использование переменной даты с помощью wget -post-data
  • В чем смысл wget -O -
  • wget захватывает пустые файлы, которые фактически существуют
  • Включение параметров приема / отклонения в wget-файлах
  • Команда Wget, которая возвращает всех веб-страниц на веб-сервере
  • 2 Solutions collect form web for “Как объединить опции '-i file' и '-O filename' из wget?”

    Напишите свой собственный тривиальный сценарий оболочки и используйте его как ./get-them.sh < get-then.list

    скрипт оболочки get-them.sh

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

    входной файл get-them.list

     file1 https://unix.stackexchange.com/ file2 https://stackexchange.com/ 

    Предполагая, что входной файл выглядит

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

    для обработки входного файла один раз:

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

    Я использую фигурные скобки, поэтому команды чтения выполняются в текущей оболочке, и, следовательно, переменные существуют в текущей оболочке.

    Если вам отчаянно нужен однострочный

     wget -i "$(sed -n 1p input.file)" -O "$(sed -n 2p input.file)" 
    Linux и Unix - лучшая ОС в мире.