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

la estafa más habitual de España

Así es la estafa más habitual: WhatsApp, Telegram, oferta de empleo y un troyano…

Está arrasando. La estafa más habitual que circula por España lo tiene todo: ingeniería social, plataformas de mensajería, el señuelo del un empleo irreal y un troyano que tienes cuando ya has caído. Los expertos en ciberseguridad como Secure&IT se han hecho eco de multitud de robos de estas características. Describiendo la estafa más habitual

planificar un viaje con ChatGPT

Planificar un viaje con ChatGPT: todo lo que debes saber

Planificar un viaje con ChatGPT es una de las muchas cosas que se pueden hacer con esta popular herramienta. Destinos, restaurantes, precios, parkings donde dejar el coche, itinerarios… Se puede hacer de todo con la IA, pero hasta cierto punto. Y es que hay límites y riesgos que hay que tener en cuenta. Lo analizamos

nuevas funciones de Apple Intelligence

Traducción en Vivo y las nuevas funciones que llegan a Apple Intelligence

Apple ha anunciado nuevas funciones de Apple Intelligence que mejoran la experiencia del usuario en iPhone, iPad, Mac, Apple Watch y Apple Vision Pro. Es decir todo el ecosistema de Apple. Entre lo más destacado, llega Traducción en Vivo, si bien también hablaremos de otras mejoras en inteligencia visual o las novedades en Image Playground

webs con accesibilidad digital

Webs con accesibilidad: problema y asignatura pendiente en España

Aunque pueda parecer perfecta, Internet tiene carencias, especialmente para las personas con discapacidad. En lo que comprende a España, el país tiene una asignatura pendiente en la inclusión digital, puesto que las webs con accesibilidad digital son minoría. Este ha sido del tema de debate de la jornada “Accesibilidad Digital: Un futuro inclusivo”, organizada por