for name in `cat textfile`; do curl -s -o /dev/null --write-out %{http_code} $name 2>&1 ; echo -e "\n"; done
объяснение:
for url in `cat textfile`
Выведите все записи в вашем текстовом файле с помощью команды cat
и сделайте текущий указатель доступным через переменную url
.
curl -s -o /dev/null --write-out %{http_code} $url 2>&1
Вызовите cURL и подавьте любой статус выполнения с помощью -s
, запишите любой другой вывод в /dev/null
(это черная дыра, в которую вы можете выбросить что угодно) с помощью ключа -o
, затем используйте --write out %{http_code}
чтобы получить Вы возвращаете код каждой ссылки, которую делаете, ставите текущую ссылку с помощью $url
и перенаправляете STDERR в STDOUT с 2>&1
(в случае, если у вас возникнут какие-либо ошибки). Затем...
; echo -e "\n"
Эхо в новой строке, независимо от того, завершился ли последний оператор (весь этот блок cURL).
`; done
Завершите цикл.
Это, вероятно, не то, что вы хотели, так как он только печатает коды возврата.