Hay ocasiones en que se te ofrece hacer cálculos matemáticos o aritméticos y no estás en el ambiente gráfico para abrir una calculadora como "xcalc", o simplemente es una operación rápida y no quieres salir de la línea de comandos o terminal.
$> x=5 $> y=6 $> echo $[ $x * $y ] 30
O directamente sin variables:
$> echo $[ 34 * (12 + 27) ] 1326
Aunque funcional, el shell bash, que es el que la gran mayoría usamos, no soporta decimales en cálculos directos de este tipo:
$> echo $[ 2/3 ] 0
Si quieres trabajar con precisión, entonces puedes combinar echo con bc, que es una calculadora en modo de shell de alta precisión:
$> echo "2/3" | bc -l .6666666666666666
Si no usas la opición -l el resultado será sin decimales, con -l se hace uso de librerias matemáticas que permiten precisión. Nota que la sintaxis cambia, la operación a realizar debe de ir entre comillas y puede ser tan compleja como la requieras.
De hecho puedes usar bc interactivamente con tan solo invocarlo, prueba haciendo enormes cálculos y verás que bc te responde todas, para salir con "quit".
#> 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'. 72387137874912859483598392485923834823*849583498592348592834952952852.74857485+(47364 736/7342)*3483748374837483+(12121212121212121212121*121212121212121212121212)-1.8 61498917848855172864813824108221843858403546231563537439656606724480\ .24488731486087726180
Nota que el resultado comienza después de haber presionado enter en el renglón que termina en "-1.8", el resultado lo dividió en este caso en dos renglones que lo indica con "\". Si sabes de una herramienta similar en Windows (que no sea Mathematica u otra de cientos de dólares) por favor me avisas.
| AÑADIR ESTE ARTÍCULO A MIS FAVORITOS |
Más artículos sobre Linux y Open Source