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
Limitar comandos que o usuário pede executar
Descobrir o MAC address de um IP com arping
Backup do Outlook de uma estação com Windows XP
Substituindo palavras no editor VI
Arrumar o relógio
Leitura recomendada
Shell Script - Imprimindo nome da própria função em execução
Convertendo Segundos em Horas Usando Bash
Economize energia, um bem precioso
Nome de arquivo com espaço dentro de variáveis
Trabalhando com parâmetros em Shell Script
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