Как скрутить все файлы рекурсивно - PullRequest
0 голосов
/ 02 июля 2019

Вот код, который я сейчас использую:

xargs -n 1 curl -s -o /dev/null -w "%{http_code} - %{url_effective}\n" < 'file.txt'

Это работает для скручивания всех URL-адресов, которые находятся в file.txt и получения кода состояния и URL-адреса, который был скручен. Однако мне нужно сделать это для каждого файла рекурсивно.

Я пробовал несколько вещей, подобных этой, но ни одна из них не работала:

xargs -n 1 curl -s -o /dev/null -w "%{http_code} - %{url_effective}\n" < *

В нескольких каталогах содержится около 3000 файлов. Есть ли способ сделать это рекурсивно?

1 Ответ

1 голос
/ 04 июля 2019

Предположим, что имя вашего списка файлов имеет такое правило: file.txt, file1.txt, file2.txt в текущем рабочем каталоге, включая подкаталоги.

Вы можете объединить все ссылки в этих файлах командой cat **/file*.txt, а затем объединить ее с xargs:

cat **/file*.txt | xargs -n 1 curl -s -o /dev/null -w "%{http_code} - %{url_effective}\n"

Удачи!

...