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
Substituindo palavras no editor VI
Limitar comandos que o usuário pede executar
Habilitando e desabilitando o IPv6 no Debian
Filtrando sites navegados por máquinas no log do Squid
Backup em DVD com growisofs
Leitura recomendada
Concatene com o Bash e fique contente!
Nome de arquivo com espaço dentro de variáveis
Endereço IP como variável
Site com várias dicas de ajuda para shell script
Números aleatórios 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