Operador OR lógico en Bash Script

Yahya Irmak 30 enero 2023
  1. Operador lógico OR (||) en Bash
  2. Operador lógico OR (||) con valores no booleanos
  3. Use el operador lógico OR (||) en Bash Scripting
Operador OR lógico en Bash Script

Explicaremos el operador lógico OR (||) y cómo funciona a lo largo de este artículo. También daremos ejemplos de cómo se puede usar en Bash scripting.

Operador lógico OR (||) en Bash

El operador lógico OR || procesa múltiples valores. Por lo general, se usa con valores booleanos y devuelve un valor booleano. Devuelve true si al menos uno de los operandos es verdadero. Devuelve false si todos los valores son falsos.

Pongamos algunos ejemplos.

True  || False --> True
False || True  --> True
True  || True  --> True
False || False --> False

Operador lógico OR (||) con valores no booleanos

El valor de retorno no será booleano si el operador lógico OR (||) se usa con valores no booleanos como cadenas y números. Considere el siguiente ejemplo.

param1 || param2 || param3

Si el valor booleano de param1 es true, devuelve el valor de este operando y los demás operandos son ignorados. De lo contrario, se comprueba param2.

Si su valor booleano es true, el resultado es el valor de param2, y el resto de operandos se ignoran. Este proceso continúa hasta el último operando.

Si el valor booleano del último operando tampoco es true, el resultado es el valor del último operando.

El valor booleano de las siguientes expresiones es false. El resto es true.

  • 0
  • NaN
  • null
  • undefined
  • "", '' (Cuerda vacía)

Demos ejemplos de valores no booleanos.

1   || 0   --> 1
""  || 1   --> 1
""  || 0   --> 0
1   || "x" --> 1
"x" || 1   --> "x"

Operando OR con valores no booleanos

Use el operador lógico OR (||) en Bash Scripting

El operador lógico OR (||) es el mismo en las secuencias de comandos de Bash. Ahora, examinaremos el ejemplo con la sintaxis de secuencias de comandos de Bash.

if [ 1 -eq 2 ] || [ 1 -eq 1 ]; then
        echo "The result of the operation is true"
else
        echo "The result of the operation is false"
fi

En el bloque if anterior, los operandos se asignan al operador lógico OR (||). El resultado es false en la primera comparación porque 1 y 2 no son iguales.

Dado que los dos valores son iguales en la segunda comparación, son iguales, lo que da como resultado true. Entonces, nuestro proceso se vuelve false || true. Esta operación devuelve true, y el primer comando echo se ejecuta como explicamos anteriormente.

Operando OR en secuencias de comandos Bash

También podemos usar la bandera -o para esta operación.

if [ 1 -eq 2 -o 3 -eq 4 ]; then
        echo "The result of the operation is true"
else
        echo "The result of the operation is false"
fi

La lógica de este código es la misma que la del primero. Pero esta vez, el resultado de la operación será false, ya que ambas comparaciones son falsas. Entonces, se ejecuta el comando echo dentro del bloque else.

Operando OR en secuencias de comandos de Bash con el indicador -o

Yahya Irmak avatar Yahya Irmak avatar

Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.

LinkedIn

Artículo relacionado - Bash Operator