2009-07-14 2 views
2

ли возможно предотвратить Wget от создания выходного файла, если есть ошибка, как 404.Wget создает выходной файл, даже если страница не существует

Когда я бегу

wget -O my.html http://sdfsdfdsf.sdfds

http://sdfsdfdsf.sdfds не существует, но Wget все еще создает my.html


Я создавая сценарий bash и хотите, чтобы он остановился, если wget не может получить действительный файл.

ответ

5

wget возвращает ненулевой ответ для ответов не-200 (кажется).

Этот пример кода работал для меня с GNU Wget:

#!/bin/sh 

wget -O my.html http://sdfsdfdsf.sdfds 

if [ "$?" -ne "0" ]; then 
    echo "ERROR" 
fi 

Вот подробнее о $? от here.

$? статус выхода последней выполненной команды: , заданный как десятичная строка. Когда команда завершается успешно, она возвращает статус выхода из 0 (ноль), в противном случае он возвращает ненулевой выход .

+0

Спасибо за ваш ответ. Что такое «$?»? имею в виду? –

+0

Я обновил свой ответ с дополнительной информацией о $. Надеюсь, это поможет. – seth

1

Вы могли бы, возможно, использовать ротор (1) вместо:

curl -s -f -o my.html http://sdfsdfdsf.sdfds 
Смежные вопросы