Bash If-Then-Else Example

en esta lección, veremos cómo podemos usar sentencias If-Then-Else en scripts de entorno Bash que escribimos. Las instrucciones If-Then-Else son una herramienta útil para proporcionar una forma de definir la ruta de acción de un script cuando se cumplen algunas condiciones., Veamos cuál es la sintaxis para las sentencias If-Then-Else:

if SOME-COMMANDS;
then THEN-COMMANDS;
else ELSE-COMMANDS;
fi

en el comando anterior mostrado, si se encuentra que SOME-COMMANDS es true o su estado de retorno es 0, se ejecutarán los comandos THEN. Si este no es el caso, se ejecutan los comandos ELSE. En los comandos SOME -, generalmente hacemos alguna comparación de cadenas o comparación de valores en forma de enteros. También podemos hacer muchas operaciones que involucran archivos., Veamos algunos ejemplos de comandos primarios que se utilizan principalmente cuando se trabaja con condiciones basadas en archivos:

los comandos THEN Y ELSE pueden ser cualquier operación UNIX válida o cualquier programa ejecutable. Tenga en cuenta que los comandos then Y fi están separados por punto y coma, ya que se consideran elementos completamente separados de un script.

If-Then-Else ejemplo simple

comencemos nuestra lección con un ejemplo muy simple con declaraciones If-Then-Else.,
Aquí es un programa de ejemplo:

Si Ejemplo

Aquí está la salida nos vemos cuando se ejecuta el script:

$ . ifelse1.sh
Los valores son los mismos!
Using

usando argumentos de línea de comandos

También podemos usar argumentos de línea de comandos en nuestros scripts y usar el número de argumentos y los valores como condición en la instrucción IF que definimos. Primero definimos un archivo de texto con el siguiente contenido:

mi nombre es LinuxHint., Me encantan los servidores, especialmente los de Ubuntu. Son, por lo que
terminalish!

ahora, podemos escribir un script que encuentre si una palabra aparece en un archivo de texto o no. Vamos a definir la secuencia de comandos ahora:

echo «Encontrar $1 $2»
grep $1 $2
si

echo «$1 no se encuentra en el archivo $2.»
else
echo » found 1 encontrado en el archivo file 2.»
fi
echo » Script completado.»

Este script es muy dinámico. Considera la palabra a buscar y el archivo a buscar desde la propia línea de comandos. Ahora, estamos listos para ejecutar nuestro script:

. ifelse2.,sh love Hola.txt

veremos una salida como:

encontrando el amor en hello.txt
amor encontrado en archivo Hola.txt.
Script completado.

comprobando el número de argumentos de la línea de comandos

dentro de una instrucción IF, podemos incluso comprobar cuántos argumentos de la línea de comandos se pasaron al comando para que podamos actuar sobre el mismo:

count=count #
if
then
echo » Not enough arguments «
else
echo » Good job!,»
fi

vamos a ejecutar este script ahora, veremos la siguiente salida:

argumentos de la línea de comandos

sentencias If-Then-elif-Else

También podemos tener varias sentencias IF En mismo bloque para acotar la ruta de decisión que nuestro programa toma para ejecutar los comandos que definimos., Aquí está la sintaxis para definir múltiples sentencias IF en nuestros scripts:

if TEST-COMMANDS;
then
RESULT-COMMANDS;
elif
ANOTHER-COMMANDS;
then
ANOTHER-RESULT-COMMANDS;
else
ALTERNATE-COMMANDS;
fi

sin embargo, esto parece bastante familiar y fácil de seguir también., Vamos a definir un ejemplo simple para establecer cómo funciona el árbol:

esto es lo que obtenemos con este comando:

If Then elif else example

usando mayúsculas y minúsculas

las instrucciones IF-ELSE son útiles cuando tienes una gran lista de opciones que necesita decidir. Pero en caso de que desee realizar una acción solo en unos pocos casos de coincidencia exacta con el resultado, también podemos usar sentencias CASE en scripts Bash., Su sintaxis se ve como:

El último caso con * actúa como el caso predeterminado y se ejecutará cuando ninguno de los casos definidos anteriormente se encuentre coincidente.

construyamos rápidamente un ejemplo simple usando las sentencias CASE:

case «case 1» in
1)
echo «Value is 1.»
;;
2)
echo » valor es 2.»
;;
3)
echo » valor es 3.»
«;;
*)
echo «Otro valor pasado.»
ESAC

cada sentencia CASE termina con;; (marcas de punto y coma dobles)., Esto es lo que obtenemos con este comando:

Ejemplo de caso

conclusión

en esta lección, vimos cómo podemos usar las sentencias IF-ELSE, IF-THEN-Elif y CASE en los scripts Bash que definimos para tomar acciones específicas sobre la base de valores que existen en nuestros programas o pasados por el usuario utilizando parámetros posicionales.

Deja una respuesta

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