Somar variáveis nos shells BASH e sh
Veja como usar o shell para somar variáveis .
Digite no shell:
$ A=10
$ B=5
Para somar o conteúdo da variável A com o da B usaremos o comando echo, veja neste exemplo abaixo:
$ echo $(($A+$B))
15
O resultado é 15.
Outras dicas deste autor
Imprimindo em uma HP Laserjet 3030 conectada a um Jetdirect através linha de comando
Descobrir o MAC address de um IP com arping
Redirecionar a porta 80 para 3128 com iptables, menos a tua máquina
Backup em DVD com growisofs
Fita DAT Linux: formatar e gravar
Leitura recomendada
Verificar saída de comando. Será que meu comando deu erro?
Achar ip válido e jogar para uma variável
Operações matemáticas diretamente pelo bash
Endereço IP como variável
Variável de numero inteiro ou float
Comentários
Outra maneira:
let C="$A + $B"
Isto falando apenas de bash, com seus comandos INTERNOS.
Agora se meter ai as calculadoras de linha de comando do Linux, como o bc e o dc... Sai de perto. Elas NÃO TEM limite de números!
Veja:
echo "34 * 45"|bc
Agora:
echo "34 ^123"|bc
Aqui o ^ significa POTÊNCIA. É o 34 elevado na potência 123!
Dá um numero bem grande...
Mensagem
Outra maneira:
let C="$A + $B"
Isto falando apenas de bash, com seus comandos INTERNOS.
Agora se meter ai as calculadoras de linha de comando do Linux, como o bc e o dc... Sai de perto. Elas NÃO TEM limite de números!
Veja:
echo "34 * 45"|bc
Agora:
echo "34 ^123"|bc
Aqui o ^ significa POTÊNCIA. É o 34 elevado na potência 123!
Dá um numero bem grande...
Muito bom!!!
Inclusive os comentários que completam!!!
Abraço
Mensagem
Muito bom!!!
Inclusive os comentários que completam!!!
Abraço
Mas como eu somo número decimais?!
Aqui deu erro ao fazer echo $(( 0.1 + 1.2 ))
bash: 0.1 + 1.2 : syntax error: invalid arithmetic operator (error token is ".1 + 1.2 ")
Mensagem
Mas como eu somo número decimais?!
Aqui deu erro ao fazer echo $(( 0.1 + 1.2 ))
bash: 0.1 + 1.2 : syntax error: invalid arithmetic operator (error token is ".1 + 1.2 ")
Prezados, se quiser usar parâmetros passados a frente pode usar dentro do arquivo teste.sh
echo $(expr $1 + $2)
# a chamada fica ./teste.sh 10 30
# retorna 40
Mensagem
Prezados, se quiser usar parâmetros passados a frente pode usar dentro do arquivo teste.sh
echo $(expr $1 + $2)
# a chamada fica ./teste.sh 10 30
# retorna 40
Contribuir com comentário
Enviar