Somar variáveis nos shells BASH e sh

Publicado por Rodrigo em 28/09/2007

[ Hits: 83.219 ]

Blog: https://www.facebook.com/

 


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

Redirecionar a porta 80 para 3128 com iptables, menos a tua máquina

Quota no Debian Etch

Arrumar o relógio

Limitar comandos que o usuário pede executar

Erro "depende: initrd-tools"

Leitura recomendada

Truques para tratamento de variáveis em shell script

Como exibir números com um largura fixa de caracteres, complentando com zeros a esquerda

Verificar saída de comando. Será que meu comando deu erro?

Iniciando Script com o Sistema - Configuração no Debian Wheezy

Shell Script - Imprimindo nome da própria função em execução

  

Comentários
[1] Comentário enviado por roddy em 30/09/2007 - 05:07h

Olha que encontrei nesta madrugada:

http://www.vivaolinux.com.br/comunidades/verTopico.php?codigo=85&codtopico=6020

[2] Comentário enviado por elgio em 30/09/2007 - 21:33h

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...


[3] Comentário enviado por volcom em 07/04/2010 - 16:20h

Muito bom!!!

Inclusive os comentários que completam!!!

Abraço

[4] Comentário enviado por guisawyer em 07/05/2014 - 18:32h

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 ")

[5] Comentário enviado por marlonla72 em 11/05/2020 - 13:52h

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




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts