Вы можете указать curl
не выводить содержимое с помощью -o /dev/null
и пересылать информацию о ходе выполнения в файл с помощью 2>>/home/warm_script/output.txt
:
#!/bin/bash
url="https://example.com"
for i in $(cat /home/warm_script/urls.txt); do
curl -m '20' -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36 (m__warmer)' "$url/$i" -o /dev/null /home/warm_script/output.txt
done
Вы также можете использовать параметр -I
, чтобы просто напечатайте заголовки:
content="$(curl -m '20' -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36 (m__warmer)' "$url/$i" -I)"
Если вам просто нужен код состояния, вы можете использовать -o /dev/null -w '%{http_code}\n' -s
(см. этот ответ :
content="$(curl -m '20' -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36 (m__warmer)' "$url/$i" -o /dev/null -w '%{http_code}\n' -s)"