Решением в моем случае было закомментировать следующие строки из файла /etc/httpd/conf.d/nss.conf:
#LoadModule nss_module modules/libmodnss.so
#Listen 8443
запуск службы httpd и снова работает! Спасибо за все!
Вы можете использовать xargs
и запустить небольшой сценарий оболочки:
jq -r '.href,.filename' file.json | xargs -n2 sh -c 'wget "$1" -O "$2"' sh
Обратите внимание, что опция wget
для -o
предназначена для файла журнала, а -O
— для «выходного документа».
Аналогично решению xargs
, но с использованием parallel
.
Он кажется более элегантным, так как не нуждается в трубе и дополнительном вызове sh
.
parallel -n2 wget {1} -O {2} ::: "$(jq -r '.href,.filename' file.json)"
Я не знаю о разделителе jq -в Linux, но вы можете использовать sed для разделения полей, чтения вывода в переменные, а затем запустить wget после этого.
$> read HREF FILENAME < <(sed -r 's/(.*href:[ ]*)([^, ]*)(.*filename:[ ]*)([^, ]*)(.*)$/\2 \4/' files.json);wget "${HREF}" -o "${FILENAME}.pdf"
sed
использует параметр -r
для включения регулярных выражений, создания групп захвата для анализа всего до href, а затем получает его значение. Затем захватывает все до имени файла и получает его значение. печать разделенных пробелами выходных данных групп захвата 1 и 4.
Значения считываются в HREF
и FILENAME
, затем двоеточие с запятой -запускает отдельную команду для запуска wget с сохраненными значениями.