Hay varios tipos de declaraciones condicionales en Bash:
- si declaración
- declaración if-else
- declaración if..elif..else
- Anidado
En este artículo, aprenderemos una de las declaraciones condicionales que es if, elseif, else junto con algunos ejemplos. En varios otros lenguajes, elif se escribe elseif o else if. La declaración elif nos ayuda a tomar decisiones entre diferentes opciones.
La sintaxis de if, elseif, else es:
si <test_expression>;luego
<comando para ejecutar>
elif <test_expression>;luego
<comando para ejecutar>
demás
<comando para ejecutar>
ser
La palabra clave if ’va seguida de la condición que desea verificar. En esta declaración condicional if-else-if, las expresiones se evalúan de arriba a abajo.
- A esto le sigue luego palabra clave.
- Después de eso, si una expresión se evalúa como verdadera, se ejecutan las declaraciones correspondientes. Si las expresiones se evalúan como falsas, se ejecutará la declaración correspondiente dentro del elif.
- Si ninguna de las condiciones es verdadera, se ejecuta la instrucción dentro del else bloqueado.
Ejemplo 1
El elif (else if) se usa para múltiples condiciones if. En caso de que la primera condición sea falsa, marque otra condición si. En el siguiente ejemplo, tomamos información del usuario y mostramos las declaraciones correspondientes.
- Use la condición if para verificar si las marcas son mayores o iguales a 80. Si la condición se evalúa como verdadera, se imprimirá Excelente usando el comando echo debajo del bloque then.
- Si la primera condición se evalúa como falsa, luego usará la condición elif para verificar si las marcas son mayores o iguales a 70, si esto se evalúa como verdadero, imprimirá Bueno.
- Si ninguna de las condiciones anteriores se evalúa como verdadera, pasará a la condición else e imprimirá Satisfactorio.
si [ $ marcas -dar 80 ]
luego
echo 'Excelente'
elif [ $ marcas -dar 60 ]
luego
echo 'Bien'
demás
echo 'Satisfactorio'
ser
Ejemplo 2:
Por ejemplo, queremos documentar las calificaciones de un curso determinado. Las calificaciones totales son 200 con 100 puntos para los cuestionarios y 100 para las asignaciones. Queremos mostrar la suma de las tareas y los cuestionarios y, al mismo tiempo, asegurarnos de que el recuento total no supere los 200.
- Tome la entrada: quiz_marks y assignments_marks
- Asegúrese de que ninguna de las dos entradas supere las marcas máximas posibles para cada una de ellas, es decir, 100 mediante el uso de las condiciones if y elif.
- Si cualquiera de las entradas quiz_marks o assignments_marks excede 100, muestre un mensaje de advertencia usando el comando echo.
- Verifique las marcas de entrada para el cuestionario
- Verifique las marcas de entrada para las asignaciones
- Si ninguna de las condiciones anteriores coincide, es decir, ninguna de las marcas excede 100, pase a la condición else y muestre la suma de las marcas usando el comando echo.
leer -pag 'Introduzca notas de teoría:'quiz_marks
leer -pag 'Introduzca notas prácticas:'asignaciones_marcas
si (($ quiz_marks > 50));
luego
echo 'Por favor, revise las marcas de entrada para el cuestionario'.
elif (($ asignaciones_marcas > 50));
luego
echo 'Por favor, verifique las marcas de entrada para las asignaciones'.
demás
echo 'Tu puntuación total: suma =$ ((quiz_marks + asignaciones_marcas))'
ser
Ejemplo 3:
Tomemos otro ejemplo de un programa de cuenta bancaria en el que queremos tener tres salidas separadas para 3 situaciones diferentes:
- El saldo es menor que cero
- El saldo es cero
- El saldo está por encima de cero
Por ejemplo, en el siguiente programa, use las instrucciones if, elif, else para mostrar diferentes salidas en diferentes escenarios:
- Use la condición if para verificar si el saldo es menor que cero. Si esta condición se evalúa como verdadera, muestre el mensaje usando el comando echo: El saldo es menor que cero, agregue más fondos; de lo contrario, se le cobrará una multa.
- Si la condición anterior no coincide, utilice la condición elif para verificar si el saldo es igual a cero. Si se evalúa como verdadero, muestre el mensaje: El saldo es cero, agregue fondos
- Si ninguna de las condiciones anteriores coincide, utilice la condición else para mostrar: Su saldo es superior a cero.
Balance=900
si ((Balance< 0));luego
echo 'El saldo es menor que cero, agregue más fondos, de lo contrario se le cobrará una multa'
elif ((Balance ==0));luego
echo 'El saldo es cero, agregue fondos'
demás
echo Su saldo está por encima de cero.
ser
A partir de los ejemplos anteriores de la declaración condicional if, elif, else, ahora debería poder comprender cómo funciona esta declaración condicional y dónde se puede utilizar en diferentes escenarios. Espero les haya gustado el artículo.