En este artículo, le mostraremos varias formas útiles de hacer aritmética en la terminal de Linux. Al final de este artículo, aprenderá diferentes formas prácticas básicas de hacer cálculos matemáticos en la línea de comandos.
¡Empecemos!
1. Usando BashShell
La primera y más fácil forma de hacer operaciones matemáticas básicas en la CLI de Linux es usar paréntesis dobles. Estos son algunos ejemplos en los que usamos valores almacenados en variables:
$ ADD=$(( 1 + 2 )) $ echo $ADD $ MUL=$(( $ADD * 5 )) $ echo $MUL $ SUB=$(( $MUL - 5 )) $ echo $SUB $ DIV=$(( $SUB / 2 )) $ echo $DIV $ MOD=$(( $DIV % 2 )) $ echo $MOD
2. Usando el comando expr
El comando expr evalúa las expresiones e imprime el valor de la expresión proporcionada en la salida estándar. Veremos diferentes formas de usar expr para hacer operaciones matemáticas sencillas, hacer comparaciones, incrementar el valor de una variable y encontrar la longitud de una cadena.
Los siguientes son algunos ejemplos de cómo hacer cálculos simples usando el comando expr . Tenga en cuenta que muchos operadores deben escaparse o entrecomillarse para shells, por ejemplo, *
operador (veremos más en la comparación de expresiones).
$ expr 3 + 5 $ expr 15 % 3 $ expr 5 \* 3 $ expr 5 – 3 $ expr 20 / 4
A continuación, cubriremos cómo hacer comparaciones. Cuando una expresión se evalúa como falsa, expr imprimirá un valor de 0 , de lo contrario imprime 1 .
Veamos algunos ejemplos:
$ expr 5 = 3 $ expr 5 = 5 $ expr 8 != 5 $ expr 8 \> 5 $ expr 8 \< 5 $ expr 8 \<= 5
También puede utilizar la expr Comando para incrementar el valor de una variable. Fíjate en el siguiente ejemplo (de la misma manera, también puedes disminuir el valor de una variable).
$ NUM=$(( 1 + 2)) $ echo $NUM $ NUM=$(expr $NUM + 2) $ echo $NUM
Veamos también cómo encontrar la longitud de una cadena usando:
$ expr length "This is Tecmint.com"
Para obtener más información, especialmente sobre el significado de los operadores anteriores, consulte expr página man:
$ man expr
3. Usando el Comando bc
bc (Calculadora básica) es una utilidad de línea de comandos que proporciona todas las funciones que espera de una calculadora científica o financiera simple. Es específicamente útil para hacer matemáticas de coma flotante.
Si comando bc no está instalado, puede instalarlo usando:
$ sudo apt install bc #Debian/Ubuntu $ sudo yum install bc #RHEL/CentOS $ sudo dnf install bc #Fedora 22+
Una vez instalado, puede ejecutarlo en modo interactivo o no interactivo pasándole argumentos; veremos ambos casos. Para ejecutarlo de forma interactiva, escriba el comando bc en el símbolo del sistema y comience a hacer algunos cálculos, como se muestra.
$ bc
Los siguientes ejemplos muestran cómo usar bc de forma no interactiva en la línea de comandos.
$ echo '3+5' | bc $ echo '15 % 2' | bc $ echo '15 / 2' | bc $ echo '(6 * 2) - 5' | bc
El -l
la bandera se usa en la escala predeterminada (dígitos después del punto decimal) a 20 , por ejemplo:
$ echo '12/5 | bc' $ echo '12/5 | bc -l'
4. Usando el Comando Awk
Awk es uno de los programas de procesamiento de texto más destacados en GNU/Linux. Admite los operadores aritméticos de suma, resta, multiplicación, división y módulo. También es útil para hacer matemáticas de punto flotante.
Puede usarlo para hacer operaciones matemáticas básicas como se muestra.
$ awk 'BEGIN { a = 6; b = 2; print "(a + b) = ", (a + b) }' $ awk 'BEGIN { a = 6; b = 2; print "(a - b) = ", (a - b) }' $ awk 'BEGIN { a = 6; b = 2; print "(a * b) = ", (a * b) }' $ awk 'BEGIN { a = 6; b = 2; print "(a / b) = ", (a / b) }' $ awk 'BEGIN { a = 6; b = 2; print "(a % b) = ", (a % b) }'
Si eres nuevo en Awk , tenemos una serie completa de guías para que comiences a aprenderlo:Herramienta de procesamiento de texto Learn Awk.
5. Usando el comando factor
El comando factorizar Se utiliza para descomponer un número entero en factores primos. Por ejemplo:
$ factor 10 $ factor 127 $ factor 222 $ factor 110
¡Eso es todo! En este artículo, hemos explicado varias formas útiles de hacer aritmética en la terminal de Linux. Siéntase libre de hacer cualquier pregunta o compartir sus pensamientos sobre este artículo a través del formulario de comentarios a continuación.