Linux: controlar el flujo de ejecución

En los scripts bash de Linux , puede controlar el flujo de ejecución, el orden en el que se ejecutan los comandos, mediante el uso de comandos especiales como if , case , for y while .

Estas declaraciones de control utilizan el estado de salida de un comando para decidir qué hacer a continuación. Cuando se ejecuta cualquier comando, devuelve un estado de salida, un valor numérico que indica si el comando se ha realizado correctamente o no. Por convención, un estado de salida de cero significa que el comando se ha realizado correctamente. (Sí, lo leyó bien: ¡Cero indica éxito!) Un estado de salida distinto de cero indica que algo salió mal con el comando.

Por ejemplo, suponga que desea hacer una copia de seguridad de un archivo antes de editarlo con el editor vi . Más importante aún, desea evitar editar el archivo si no se puede hacer una copia de seguridad. Aquí hay un script de bash que se encarga de esta tarea:

#! / bin / sh
si cp "$ 1" "# $ 1"
entonces
vi "$ 1"
demás
echo "No se pudo crear la copia de respaldo"
fi

Este script ilustra la sintaxis de la estructura if-then-else y muestra cómo el comando if utiliza el estado de salida del comando cp para determinar la siguiente acción. Si cp devuelve cero, el script usa vi para editar el archivo; de lo contrario, el script muestra un mensaje de error y se cierra.

Por cierto, el script guarda la copia de seguridad en un archivo cuyo nombre es el mismo que el original, excepto por una marca de almohadilla (#) agregada al principio del nombre del archivo.

LEER  Iniciar sesión con Windows Hello

No olvide el fi final que termina el comando if . Olvidar fi es una fuente común de errores en los scripts de bash .

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *