이미지/파일 다운로드 중 오류 발생 시 wget에 대체 링크 전달

이미지/파일 다운로드 중 오류 발생 시 wget에 대체 링크 전달

wget파일이나 웹페이지를 다운로드할 수 있는 훌륭한 도구입니다. 웹 링크가 업데이트되지 않거나 잘못된 것을 발견한 것은 이번이 처음이 아닙니다. 예를 들어, 이미지/파일이 에 링크되어 있는 웹페이지에서 콘텐츠를 찾을 수 없으면 대신 주소를 찾아야 한다는 것을 http://websitehttp//website.file.extension알 수 있는 방법이 있습니까 ?wgethttp//website.file.extensionhttp://websitehttp//website.file.extension

편집: @Tigger의 의견에 따라 종료 상태를 얻을 수 있지만 올바른 링크/주소에 넣을 수 없는 특정 파일에 대해 wget에 어떻게 요청합니까?

wget_output=$(wget –limit-rate=200k –no-clobber –convert-links –random-wait -r -p -E "$URL")
if [ $? -ne 0 ]; then
  ...
fi

답변1

시작하기 위한 간단한 스크립트는 다음과 같습니다.

#!/bin/sh

# Make sure a URL is passed first
if [ -z "$1" ]
then
    echo "
Pass the full URL to be downloaded. For example:

 ${0##*/} \"http://websitehttp/website.file.extension\"

If that URL fails, then \"http://website.file.extension\"
will be tried automatically.
"
    exit 1
fi

# Attempt download
wget -v "${1}"

# Check for an error and if so, try an alternative download
if [ "$?" != "0" ]
then
    url2=`echo ${1} | cut -d '/' -f 4-`
    # DEBUG echo "[$url2]"
    wget -v "http://${url2}"
fi

echo "Done"
exit 0

관련 정보