단일 컬 명령으로 웹 사이트의 http 덤프 및 헤더를 얻는 방법은 무엇입니까?

단일 컬 명령으로 웹 사이트의 http 덤프 및 헤더를 얻는 방법은 무엇입니까?

웹사이트를 가져와서(여러 리디렉션에 -L을 사용할 수 있음) HTML 콘텐츠를 다음과 같은 파일에 저장해야 합니다.[HTTP_Status_code]_[웹사이트 이름].html

현재 저는 두 개의 컬 호출을 사용하고 있습니다. 하나는 덤프용이고 다른 하나는 헤더용입니다. 하나로 합칠 수 있는 방법이 있나요?

스크립트:

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
  • 컬 호출은 하나뿐이고 후처리도 하나입니다...

관련 정보