
Necesito verificar si existe un archivo en un directorio web. Si el archivo existe, me gustaría ejecutar un script bash. Si no es así, salga y no ejecute el script bash.
Esto es lo que tengo hasta ahora (en un script bash):
url="http://website.url/directory/file.txt"
if wget --spider ${url} 2>/dev/null; then
bash some_bash_script.sh
else
exit 0
fi
Respuesta1
Puedes verificar usando curl:
url="http://website.url/directory/file.txt"
if curl -f ${url} >/dev/null 2>&1; then
bash some_bash_script.sh
else
exit 0
fi
Esto funcionará solo si el servidor devuelve un 404 en caso de que el archivo no exista. Si el sitio no devuelve un 404, deberá adaptar su comando if check, posiblemente verificando la salida curl.