如何在bash中从网站中提取http代码,大小标题和标题?

时间:2017-05-08 10:56:24

标签: bash curl grep

使用curl我正在提取%{http_code}%{size_header}%{redirect_url}并且效果很好,但我也想将网站标题添加到Bash响应中。

usage: check-website.sh website-list.txt

#!/bin/bash
FILE="$1"
while read LINE; do
  curl -H 'Cache-Control: no-cache' -i -s -k -o /dev/null --silent --max-time 2 --write-out '%{http_code} %{size_header} %{redirect_url}' "$LINE"
  echo " $LINE"
done < ${FILE}

我正在寻找使用此curl命令提取标题:

curl -s example.com | grep -o "<title>[^<]*" | cut -d'>' -f2-

但是我不确定如何做到这一点,以获得bash输出,如:

%{http_code} %{size_header} %{redirect_url} $website_title

任何人都可以帮助我加入这个头衔吗?

1 个答案:

答案 0 :(得分:0)

您可以重定向到/dev/null命令,而不是重定向到grep。请注意,您应该使用不区分大小写的grep选项。我还在--write-out

的末尾添加了一个额外的空格
curl -H 'Cache-Control: no-cache' -i -s -k -o >(grep -io "<title>[^<]*" | cut -d'>' -f2-) --silent --max-time 2 --write-out '%{http_code} %{size_header} %{redirect_url} ' "$LINE"