Cómo agregar cálculos a un guión de bash

Cómo agregar cálculos a un guión de bash

Cómo agregar cálculos a un guión de bash

VALORACIÓN DEL ARTÍCULO:
5/5


Aunque Bash es un lenguaje de scripting, tiene casi todas las capacidades de un lenguaje de programación de propósito general. Esto incluye funciones aritméticas. Hay varias opciones de sintaxis que puedes usar para evocar la evaluación aritmética de una expresión. Quizás el más legible es el comando let. Por ejemplo

let "m = 4 * 1024"

se calculará 4 veces 1024 y asignará el resultado a la variable "m".

Puede imprimir el resultado añadiendo una sentencia echo:

let "m = 4 * 1024"
echo $m

Puede probar esto desde la línea de comandos introduciendo el siguiente código:

let "m = 4 * 1024"; echo $m

También puede crear un archivo que contenga los comandos Bash, en cuyo caso deberá añadir una línea en la parte superior del archivo que especifique el programa que debe ejecutar el código. Por ejemplo:

#!/bin/bash
let "m = 4 * 1024"
echo $m

asumiendo que el ejecutable Bash se encuentra en /bin/bash. También necesita establecer los permisos de su archivo de script para que sea ejecutable. Asumiendo que el nombre del archivo de script es script1.sh, puede establecer los permisos para que el archivo sea ejecutable con el comando:

chmod 777 script1.sh

Después de eso, puede ejecutarlo con el comando:

./script1.sh

Las operaciones aritméticas disponibles son similares a las de los lenguajes de programación estándar como Java y C. Además de la multiplicación, como se ilustra arriba, se utiliza la suma:

deje "m = a + 7"

o sustracción:

deje "m = a - 7"

o división:

deje "m = a / 2"

o modulo (el resto después de una división entera):

dejar "m = a % 100"

Cuando se aplica una operación a la misma variable a la que se asigna el resultado, se pueden utilizar los operadores de asignación abreviada aritmética estándar, también denominados operadores de asignación compuesta. Por ejemplo, por adición, tenemos:

dejar "m += 15"

que equivale a "m = m + 15". Para la sustracción que tenemos:

dejar "m -= 3"

que equivale a "m = m - 3". Para la división que tenemos:

deje "m /= 5"

que equivale a "m = m / 5". Y para modulo, tenemos:

let "m %= 10"

que equivale a "m = m % 10".

Además, puede utilizar los operadores increment y decrement:

deje "m++"

es equivalente a "m = m + 1". Y

deja "m--"

es equivalente a "m = m - 1".

Y luego está el operador ternario "signo de interrogación-colon", que devuelve uno de dos valores dependiendo de si la condición especificada es verdadera o falsa. Por ejemplo

que "k = (m < 9) ? 0 : 1"

La parte derecha de esta sentencia de asignación se evalúa a "0" si la variable "m" es inferior a 9. En caso contrario, se evalúa a 1. Esto significa que a la variable "k" se le asigna "0" si "m" es menor que 9 y "1" en caso contrario.

La forma general del operador de signo de interrogación-colon es:

condición ? value-if-true : value-if-false

Aritmética en coma flotante en Bash

El operador let sólo funciona para la aritmética de números enteros. Para la aritmética en coma flotante puede usar, por ejemplo, la calculadora GNU bc como se ilustra en este ejemplo:

echo "32.0 + 1.4" | bc 

El operador "pipe" "|" pasa la expresión aritmética "32.0 + 1.4" a la calculadora bc, que devuelve el número real. El comando echo imprime el resultado en la salida estándar.

Sintaxis alternativa para Aritmética

Los Backticks (comillas al reverso) pueden ser usados para evaluar una expresión aritmética como en este ejemplo:

echo `expr $m + 18`

Esto sumará 18 al valor de la variable "m" y luego imprimirá el resultado.

Para asignar el valor de cálculo a una variable se puede utilizar el signo igual sin espacios a su alrededor:

m=`expr $m + 18`

Otra forma de evaluar las expresiones aritméticas es usar paréntesis dobles. Por ejemplo:

(( m *= 4 ))

Esto cuadruplicará el valor de la variable "m".

Además de la evaluación aritmética, el intérprete de comandos Bash proporciona otras construcciones de programación, tales como bucles, bucles while-loops, condicionales y funciones y subrutinas.

TAMBIÉN TE INTERESA

dni en el móvil

Oficial: ya es posible llevar tu DNI en el móvil en España

Teníamos tarjetas bancarias, de salud, tarjetas para el transporte… pero faltaba lo más importante: el Documento Nacional de Identidad. Bueno pues desde ya es posible tener el DNI en el móvil en España. El Consejo de Ministros ha aprobado un real decreto que marca un antes y un después en la forma de acreditar la

vivo v50 Lite

Asequible y muy fino en todos los sentidos: sale a la venta el vivo v50 Lite

La marca vivo, de la cual hemos hablado recientemente por su estrategia a futuro con la robótica e IA, ha dado un nuevo paso adelante en la evolución de los smartphones con el lanzamiento del vivo V50 Lite en España. Este dispositivo combina un diseño sofisticado, potencia de alto rendimiento y resistencia excepcional, adaptándose a

estafas con criptomonedas

Estafas con criptomonedas: cómo no caer en ellas

Para bien o para mal, el sector de las criptomonedas ocupa asiduamente titulares en toda la prensa mundial. Y últimamente, las noticias giran en torno a la seguridad, así que no está de más recordar claves o consejos para evitar estafas con criptomonedas. Han pasado ya algunas semanas, pero conviene señalar dos recientes sucesos que

marca vivo

La marca vivo atisba un futuro con robots en nuestras casas

La industria tecnológica avanza a pasos agigantados, y en este escenario, la marca vivo se está postulando desde China como uno de los actores clave en la innovación digital. Durante la Conferencia Anual Boao Forum 2025 for Asia, celebrada en Boao, Hainan, la compañía ha presentado su nueva visión del futuro, marcada por la convergencia