我必须获取一个网站(可以使用 -L 进行多个重定向)并将 html 内容保存在名为的文件中[HTTP_Status_code]_[网站名称].html
目前我正在使用两个curl 调用,一个用于转储,另一个用于标头。有什么办法可以将它们合而为一吗?
脚本:
cat url_list.txt | while read line; do
if curl -L $line -o `curl -I $line 2>/dev/null | head -n 1 | cut -d$' ' -f2`_`basename $line`.html
then
:
else
echo $line >>error.txt
fi
done
编辑:我必须找到最后一个重定向的标头。
答案1
关于什么
cat url_list.txt | while read line; do
if curl -D tmp_status.txt -L $line -o tmp_file.html
then
mv tmp_file.html $(awk '/HTTP/ { print $2}' tmp_status.txt)_$(basename $line)
else
echo $line >>error.txt
# processing from tmp_status
fi
done
- 只有一次curl调用,但是一个后处理......