while - check if variable is not empty bash
Compruebe si el archivo existe y continĂșe si no, salga en Bash (3)
Cambia esto a esto:
{
if [ ! -f /scripts/alert ]; then
echo "File not found!"
exit 0
fi
}
Un condicional no es un bucle, y no hay un lugar al que deba saltar. La ejecución simplemente continúa después del condicional de todos modos.
(También eliminé el innecesario &&
. No es que deba suceder, pero en caso de que el echo
falle, no hay razón para no salir).
Tengo un script que es un script en una cadena de otros que envía un correo electrónico.
Al inicio de la secuencia de comandos, quiero comprobar si existe un archivo y continuar solo si existe, de lo contrario, simplemente salga.
Aquí está el comienzo de mi guión:
if [ ! -f /scripts/alert ];
then
echo "File not found!" && exit 0
else
continue
fi
Sin embargo sigo recibiendo un mensaje que dice:
line 10: continue: only meaningful in a `for'', `while'', or `until'' loop
Cualquier punteros?
Sí. Deja caer el else continue
. Es completamente innecesario.
Su problema es con la línea de continue
que normalmente se usa para saltar a la siguiente iteración de un bucle for
o while.
Por lo tanto, solo eliminar la parte else
de su script debería permitir que funcione.