다운로드 URL 목록을 읽는 셸 스크립트를 만들어 계속 사용 중인지 확인하려고합니다. 나는 현재 스크립트에서 무엇이 잘못되었는지 확신하지 못한다. (필자는 이것에 익숙하지 않다.) 포인터가 큰 도움이 될 것이다!Wget이있는 쉘 스크립트 - 다른 루프 내부에 중첩 된 경우
사용자 @ PC를 : ~/테스트 # 고양이 sites.list
http://www.google.com/images/srpr/logo3w.png
http://www.google.com/doesnt.exist
notasite
스크립트 :
#!/bin/bash
for i in `cat sites.list`
do
wget --spider $i -b
if grep --quiet "200 OK" wget-log; then
echo $i >> ok.txt
else
echo $i >> notok.txt
fi
rm wget-log
done
그대로, 스크립트가 notok.txt에 모든 출력 - (첫 번째 구글 사이트해야 ok.txt로 이동하십시오.) 내가 실행한다면 : 다음
wget --spider http://www.google.com/images/srpr/logo3w.png -b
을 그리고 할 : 그것은 아무 문제없이 문자열을 greps
grep "200 OK" wget-log
. 구문과 관련하여 멍청한 실수가 있었습니까? 감사합니다 m8s!
좋은 캐치 !! +1 – Graham
사실. 나도 +1. :) – ghoti
작품! 고맙습니다! –