Bash: operaciones aritméticas

Como hacer operaciones aritméticas con enteros dentro de bash que el manual de Bash lo llama Expansión aritmética. Se puede hacer de tres formas:

  1. usando comillas invertidas
    Se utiluza en conjunción con expr y es el menos recomendado ya que usa una aplicación externa. Ejemplos:

    a=`expr 5 % 3`  # módulo
    b=`expr $a + 3` # suma
    area[5]=`expr ${area[11]} + ${area[13]}` # suma de 2 arrays
  2. usando doble paréntesis (( ))
    Es el uso correcto además del let, se puede usar (( )) o $(( )) y dentro se puede usar la variable con o sin $. Ejemplos:

    z=$(($z+3))          #  Variable con $.
    z=$((z+3))          #  Variable sin $.
    (( n += 1 ))  # incrementa 1 a n (mal si se usa $n)
  3. usando let
    Menos usado pero igual de eficiente que (( )), es más al estilo del Basic ;-) . Ejemplos

    let z=z+3
    let "z += 3"
    let "Score[1] += ${Score[0]}"  # con arrays

Articulos similares:


Deja un comentario

Tu comentario