
У меня есть текстовый файл, содержащий до 100 URL-адресов. Я могу скрутить исходный код страницы из них с помощью:
cat /path/to/url.txt|xargs curl -o /path/to/output.txt
Это загрузит исходный код страницы для всех URL-адресов (как я вижу в командной строке), но сохранит (в output.txt
) только исходный код страницы для URL-адреса в верхней части списка.
Как мне сохранить исходный код страницы для каждого URL-адреса, будь то в одном текстовом файле или, при необходимости, в отдельных текстовых файлах?
Спасибо,
решение1
С помощью GNU Parallel вы можете получать несколько URL-адресов параллельно, и вам не нужно беспокоиться о том, что выходные данные будут смешиваться:
cat /path/to/url.txt | parallel curl > /path/to/output.txt
решение2
for i in $(cat urls.txt); do curl "$i" >> output.txt; done
решение3
с простым списком URL-адресов в каждой строке это должно выполнить работу и вывести все в одном файле:
while read in; do xargs curl -K "$in" >> /path/to/output.txt; done < /path/to/url.txt