Вы можете добавить строку для извлечения заголовка meta для роботов из исходного кода страницы и изменить строку с помощью echo , чтобы показать ее значение:
#!/bin/bash
while read url
do
dt=$(date '+%H:%M:%S');
urlstatus=$(curl -kH 'Cache-Control: no-cache' -o /dev/null --silent --head --write-out '%{http_code} %{redirect_url}' "$url" )
metarobotsheader=$(curl -kH 'Cache-Control: no-cache' --silent "$url" | grep -P -i "<meta.+robots" )
echo "$url $urlstatus $dt $metarobotsheader" >> urlstatus.txt
done < $1
В этом примере записывается исходная строка с заголовком meta для роботов.
Если вы хотите поставить отметку "-", когда на странице нет meta заголовок для роботов, вы можете изменить строку metarobotsheader
и поставить эту строку:
metarobotsheader=$(curl -kH 'Cache-Control: no-cache' --silent "$url" | grep -P -i "<meta.+robots" || echo "-")
Если вы хотите извлечь точное значение атрибута, вы можете изменить эту строку:
metarobotsheader="$(curl -kH 'Cache-Control: no-cache' --silent "$url" | grep -P -i "<meta.+robots" | perl -e '$line = <STDIN>; if ( $line =~ m#content=[\x27"]?(\w+)[\x27"]?#i) { print "$1"; } else {print "no_meta_robots";}')"
Если URL-адрес не содержит заголовка meta для роботов, он будет отображать no_meta_robots .