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
Fita DAT Linux: formatar e gravar
Arrays no BASH
Backup do Outlook de uma estação com Windows XP
Backup em DVD com growisofs
Imprimindo em uma HP Laserjet 3030 conectada a um Jetdirect através linha de comando
Leitura recomendada
Como exibir números com um largura fixa de caracteres, complentando com zeros a esquerda
Variável de numero inteiro ou float
Site com várias dicas de ajuda para shell script
Variáveis compostas em shell script
Economize energia, um bem precioso
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