next up previous
Next: Expresiones condicionales Up: El Bourne Shell Previous: Variables de solo lectura

Aritmética

Aunque el Bourne Shell no soporta operaciones aritméticas directamente éstas si son soportadas usando el comando
expr expresión
que evalúa la expresión formulada y envía el resultado a la salida estándar. Este valor puede ser así asignado a una variable. Veamos primero los operadores utilizados ordenados por prioridad:


\begin{displaymath}\vline
\begin{tabular}{\vert l\vert l\vert}
\hline
{\bf Oper...
...a la longitud de la {\sl cadena}\\
\hline
\end{tabular}\vline
\end{displaymath}

Para modificar las prioridades podemos usar los paréntesis y \). Veamos algunos ejemplos:



width 3pt
width .3pt415pt$ x=1
$ x=`expr $x + 1` (una sencilla suma)
$ echo $x
2
$ x=`expr 2 + 3 \* 5` (ahora junto con una multiplicación)
$ echo $x 17
$ echo `expr \( 2 + 3 \string\) \* 5` (el uso de los paréntesis)
25
$ echo `expr length "cat"` (calculando la longitud de una cadena)
3
$ echo `expr substr "hola caracola" 5 5 (extrayendo una subcadena ...)
> ` (... pero se me olvida cerrar la comilla que agrupa la expresión)
cara
$ echo `expr \(4\string\>5\string\)` (los espacios en blanco son muy importantes)
(4>5) (pues el resultado obtenido no es correcto)
$ echo `expr \(4\string\>5\string\)`
0 (4 no es mayor que 5)
$
width .3pt
depth .3pt width -3pt

Todos estos ejemplos debieran funcionar sin modificación alguna usando bash .


next up previous
Next: Expresiones condicionales Up: El Bourne Shell Previous: Variables de solo lectura
Vicente González Ruiz
1998-07-13