La calculadora gana terreno al cerebro. Hoy casi nadie se plantea tomar lápiz y papel para hacer operaciones esenciales y aunque sea un excelente ejercicio mental, el tiempo por obtener un resultado exacto apremia y relega los viejos métodos. Algo tan esencial como una calculadora es hoy por hoy una herramienta imprescindible que debemos tener siempre a mano. Os muestro dos insignificantes trucos para hacer cálculos por línea de comandos en Bash prescindiendo del entorno gráfico.
Usar Bash como calculadora
Un simple comando echo nos mostrará el resultado de una operación si la indicamos entre dobles paréntesis.
OJO: Sólo válido para números enteros
Ejemplo:
bc (Bash Calculator)El comando bc me ha sorprendido por su potencia. Fijaos en algunas de sus características:
- Soporta números decimales
- Acepta operaciones redireccionadas desde la entrada estándar para sacar los resultados por la salida estandard
- Es compatible con la sintaxis del lenguaje C, podemos usar expresiones que incluyan if, while, for, break, return...
- Permite la creación de funciones de usuario: define
- Implementa funciones de la librería math de C como seno, coseno, arcotangente... (arrancar con el parámetro -l)
- Soporta variables y arrays
Ejemplo de uso desde bash redireccionando la salida estándar a bc:
$ pi=$(echo "scale=10; 4*a(1)" | bc -l)
$ echo $pi
3.1415926532
Ejemplo de uso desde la interface de usuario de bc
Notad que el separador ; permite ejecutar varios comandos en una línea
$ bc -l
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
scale=10; 4*a(1)
3.1415926532
quit