let

O let é um comando embutido no bash (e isto quer dizer que se você quiser info sobre ele tem que ver na manpage do bash, mais especificamente no tópico ARITHMETIC EVALUATION). Ele é bastante útil para quem está acostumado com programação C, pois sua sintaxe é parecidíssima, mas só é usado para expressões aritméticas.

Com este comando você pode comparar valores numéricos com os sinais <, >, <=, >=, ==, e !=. E mais bastante coisa comum em linguagem C (como por exemplo o ++ e o --). Alguns exemplos do que você pode fazer:

let var++         # equivalente a "var=$[ $var + 1 ]"
let var--         # equivalente a "var=$[ $var - 1 ]"
let "$num > 2"    # equivalente a "[ $num -gt 2 ]"

Outra coisa interessante é que você pode substituir

let "expressao"

por

(( expressao ))

Portanto os exemplos acima poderiam ser feitos assim:

(( var++ ))
(( var-- ))
(( $num > 2 ))

Veja este script abaixo apenas para entender a utilidade do let:

#!/bin/bash
# lettest.sh

if (( $# != 2 )) ; then    # poderia ser: if let "$# != 2"
        echo "Uso: `basename $0` N1 N2" 1>&2
        exit 1
fi

if (( $1 > $2 )) ; then    # poderia ser: if let "$1 > $2"
        echo "$1 é maior que $2"
elif (( $1 == $2 )) ; then    # poderia ser: elif let "$1 == $2"
        echo "$1 é igual a $2"
else
        echo "$1 é menor que $2"
fi

results matching ""

    No results matching ""