저는 다음과 같은 간단한 스크립트를 작성했습니다.
export http_proxy='http://proxy.test.cz:1234/'
wget -nvq --proxy-user=test --proxy-password=test google.com &>/dev/null | grep -q 'You cant user internet' || echo "Proxy isnt working. " | mail -s "Proxy isnt working" -r "No-reply<[email protected]>" [email protected]
취해야 할 단계:
- 우리 에이전트의 주소를 내보냅니다.
www.google.com
에서 다운로드하세요wget
.- 프록시 결과 확인 "인터넷을 사용할 수 없습니다"
- 발견되면 종료되어야 하고, 발견되지 않으면 내 주소로 이메일을 보내야 합니다.
문제는 "인터넷을 사용할 수 없습니다"라는 메시지가 표시되더라도 여전히 이메일을 보낸다는 것입니다.
답변1
에코 블록에서 ( ) 사용
wget -nvq --proxy-user=test --proxy-password=test google.com &>/dev/null | grep -q 'You cant user internet' || (echo "Proxy isnt working. " | mail -s "Proxy isnt working" -r "No-reply<[email protected]>" [email protected])
이 스크립트를 사용해 보십시오. 온라인 프로그램에서 백그라운드에서 wget을 실행하고 내용을 grep해 보십시오...
#!/bin/bash
OUTPUT_FILE=/tmp/$$.txt
wget -nvq --proxy-user=test --proxy-password=test google.com > ${OUTPUT_FILE} 2>&1
grep -q 'You cant user internet' ${OUTPUT_FILE}
if [ "$?" -eq "0" ]
then
echo "Proxy isnt working. " | mail -s "Proxy isnt working" -r "No-reply<[email protected]>" [email protected]
else
echo "Proxy is working"
fi