sintaxis de Bash If Else con ejemplos

cuando se trabaja con scripts de Bash y shell, es posible que necesite usar condiciones en su script.

en la programación, las condiciones son cruciales : se utilizan para afirmar si algunas condiciones son verdaderas o no.

en este tutorial, nos vamos a centrar en una de las sentencias condicionales del lenguaje Bash: la sentencia Bash if else.

vamos a ver cómo puede usar esta instrucción para ejecutar sus scripts condicionalmente.,

también aprenderá cómo puede usar sentencias Bash if else anidadas para crear código más complejo.

tabla de contenidos

instrucción Bash If Else

para ejecutar una instrucción Bash «if else», debe usar cuatro palabras clave diferentes : if, then, else y fi :

  • if : representa la condición que desea verificar;
  • Entonces : si la condición anterior es verdadera, ejecute un comando específico;
  • else : si la condición anterior es false, ejecute otro comando;
  • Fi : cierra la instrucción «If, Then, Else».,

Cuando utilice la instrucción» if else», necesitará encerrar condiciones entre corchetes simples o dobles.

if ]then <execute command>else <execute another command>fi

tenga en cuenta que la instrucción «ELSE» es opcional, si la omite, no se ejecutará nada si la condición se evalúa como false.

nota: debe separar la condición de los corchetes con un espacio, de lo contrario podría obtener un error de sintaxis.,

ejemplos If Else

ahora que sabe más sobre la declaración Bash «if else», veamos cómo puede usarla en ejemplos del mundo real.

en esta sección, vamos a construir un script que imprime un mensaje si es ejecutado por el usuario root.

si el script no es ejecutado por el usuario root, va a escribir otro mensaje personalizado.

para comprobar si el script es ejecutado por root, necesitamos ver si el UID de la persona que llama es cero.,

#!/bin/bash# If the user is root, its UID is zero.if then echo "You are root!"else echo "You are not root."fi

Como se indicó anteriormente, el «más» la declaración no es obligatoria.

si omitimos en nuestro script creado anteriormente, todavía podríamos ejecutar la primera sentencia «then».

#!/bin/bash# If the user is root, its UID is zero.if then echo "You are root!"fi

Ahora, lo que si desea añadir más declaraciones «if» a las secuencias de comandos?,

instrucción Bash If elif

la instrucción «If elif» se utiliza en Bash para añadir instrucciones «if» adicionales a sus scripts.,

para ejecutar una instrucción Bash «if elif», debe usar cinco palabras clave diferentes : if, then, elif, else y fi :

  • if : representa la condición que desea verificar;
  • then : si la condición anterior es verdadera, ejecute un comando específico;
  • Elif : se usa para agregar una condición adicional a su instrucción;
  • else: si las condiciones anteriores son falsas, ejecute otro comando;
  • / li >
  • Fi : cierra la instrucción «if, elif, then».,

if ]then <execute command>elif ]then <execute another command>else <execute default command>fi

de nuevo, la instrucción» ELSE » es opcional, por lo que es posible que desee omitirla si no necesita una instrucción predeterminada.

if ]then <execute command>elif ]then <execute another command>fi

If elif Examples

en nuestra sección anterior, usamos la instrucción «if else» para verificar si un usuario es root o no.

en esta sección, vamos a comprobar si el Usuario es root o si el usuario tiene un UID de 1002.

si este no es el caso, vamos a salir del script y devolver el prompt al usuario.,

if ]then echo "You are root!"elif ]then echo "You are user, welcome!"else echo "You are not welcome here." exit 1;fi

Felicitaciones, ahora que usted sabe cómo usar el «si elif» declaración!

Ahora, ¿qué pasa si desea tener varias condiciones bajo la misma instrucción «if»?

múltiples condiciones en If Else

para tener múltiples condiciones escritas en la misma instrucción «if else», debe separar sus condiciones con un operador» y «o un operador» u».,

Por ejemplo, si desea escribir un script que comprueba que usted es el usuario root y que proporcione el parámetro correcto, habría que escribir :

Anidada Si Else

En algunos casos, se desea implementar anidada condiciones con el fin de tener condiciones que se verifican bajo condiciones preliminares.

para tener instrucciones «if else» anidadas, simplemente tiene que incluir la instrucción «if» en otra instrucción «if» y cerrar su instrucción anidada antes de la que la encierra.,

if ]then if ] then <execute command> else <execute another command> fifi

Nota : Asegúrese de tener una declaración «fi» de cierre para cada declaración «if» que abra. Una sola » fi «simplemente no es suficiente para múltiples declaraciones «if».

instrucciones anidadas ejemplos

como ejemplo, digamos que desea verificar que el Usuario es root antes de verificar que el primer argumento proporcionado es cero.,

para resolver eso, escribiría una instrucción anidada «if, then, else» de la siguiente manera :

pruebas Bash

probablemente notado, en las secciones anteriores, utilizamos el operador «-EQ» con el fin de comparar un valor de variable a un número.

hicimos una simple comprobación de igualdad, pero ¿qué pasa si quieres tener una comprobación de desigualdad?

¿Qué pasa si desea comprobar si un valor es mayor que un número dado, por ejemplo?

para realizar esto, necesitará pruebas de Bash.,

Las pruebas Bash son un conjunto de operadores que puede usar en sus declaraciones condicionales para comparar valores juntos.

Las pruebas de Bash se pueden enumerar ejecutando el comando «prueba de ayuda».,

$ help test

al escribir pruebas Bash, esencialmente tiene tres opciones :

  • escribir condiciones en archivos y directorios : si existen, si son un archivo de caracteres, un archivo de dispositivo, etc.;
  • escribir condiciones en números : si son iguales entre sí, si uno es mayor que el otro;
  • Escribir condiciones en cadenas : si se establece una variable de cadena o si dos cadenas son iguales entre sí.,

condiciones del archivo Bash

Las condiciones del archivo Bash se utilizan para comprobar si un archivo existe o no, si se puede leer, modificar o ejecutar.,n)

-w Archivo puede ser modificado (permiso de escritura) -x Archivo puede ser ejecutado (permiso de ejecución)

por ejemplo, Para comprobar si un archivo es un directorio, habría que escribir la siguiente secuencia de comandos

#!/bin/bash# Checking the first argument providedif ]then echo "This is a directory"else echo "Not a directory"fi

Bash Número de Condiciones

Bash número de condiciones que se utilizan para comparar dos números : si son iguales, si uno es mayor que otro o inferior a otra.,num2

Comprobar si los números no son iguales num1 -lt num2 Comprobar si num1 es inferior num2 num1 -le num2 Menor o igual que num2 num1 -gt num2 Mayor que num2 num1 -ge num2 Mayor o igual que num2

por ejemplo, Para comprobar si un número no es igual a cero, habría que escribir :

Bash Cadena de Condiciones

Bash cadena de condiciones se utilizan para comprobar si dos cadenas son iguales o si una cadena si está vacío.,

Here is a table of the main Bash string conditions :

Operator Description
str1 = str2 Checks if strings are equal or not
str1 !,= str2 comprueba si las cadenas son diferentes
-z str1 comprueba si str1 está vacío
-n str1 comprueba si str1 no está vacío

por ejemplo, para verificar si un usuario proporcionó un valor a su script, escribiría :

conclusión

en el tutorial de hoy, aprendió sobre la declaración bash «if else».

vio, con ejemplos, que puede construir sentencias más complejas: usando sentencias Elif y anidadas.,

finalmente, ha descubierto sobre las pruebas Bash, qué son y cómo se usan para verificar las condiciones en los scripts.

si está interesado en la administración de sistemas Linux, tenemos una sección completa dedicada a ella en el sitio web, ¡así que asegúrese de echarle un vistazo!

Author: admin

Deja una respuesta

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