Wget crea archivo de salida, incluso cuando no existe la página
Pregunta
¿Es posible evitar que se Wget de hacer un archivo de salida cuando hay un error como 404.
Cuando corro
wget -O my.html http://sdfsdfdsf.sdfds
http: //sdfsdfdsf.sdfds no existe, pero todavía crea Wget my.html
Estoy haciendo un script bash y quiere asegurarse de que se detenga si wget no puede obtener un archivo válido.
Solución
wget devuelve una respuesta que no sea cero para los no-200 respuestas (parece).
Este código de ejemplo me funcionó con GNU wget:
#!/bin/sh
wget -O my.html http://sdfsdfdsf.sdfds
if [ "$?" -ne "0" ]; then
echo "ERROR"
fi
Aquí hay más información sobre $?
de rel="noreferrer"> .
$? el estado de salida del último comando ejecutado es dado como una cadena decimal. Cuando un comando se completa con éxito, se devuelve el estado de salida de 0 (cero), de lo contrario devuelve un no-cero salida de estado.
Otros consejos
Se podría utilizar quizá rizo (1) en su lugar:
curl -s -f -o my.html http://sdfsdfdsf.sdfds