Realizando operações aritméticas básicas
Operações aritméticas simples como adição, subtração, divisão e multiplicação podem ser executadas usando o comando 'BC'. A sintaxe para aplicar operadores binários simples em bash usando o comando 'BC' é o seguinte.
ubuntu@ubuntu: ~ $ echo “”| bc
Nesta seção, usaremos o comando 'BC' para realizar operações aritméticas simples.
ubuntu@ubuntu: ~ $ num1 = 2.35322 5
ubuntu@ubuntu: ~ $ num2 = 1.223353
ubuntu@ubuntu: ~ $ echo “$ num1+$ num2” | bc
3.576578
ubuntu@ubuntu: ~ $ echo “$ num1- $ num2” | bc
1.129872
ubuntu@ubuntu: ~ $ echo “$ num1*$ num2” | bc
2.878824
ubuntu@ubuntu: ~ $ echo “$ num1/$ num2” | bc
1
No exemplo acima, durante a divisão, obtivemos o resultado sem pontos decimais. Para obter o resultado até os pontos decimais 'n', precisamos definir o valor da escala como 'n', como mostrado no exemplo a seguir.
ubuntu@ubuntu: ~ $ echo “escala = 10; $ num1/$ num2 ”| bc
1.9235862420
Como alternativa, podemos usar o comando '-l' e o comando 'BC' para obter saída decimal.
ubuntu@ubuntu: ~ $ echo “$ num1/$ num2” | bc -l
1.92358624207403750184
O comando 'BC' também pode ser usado para executar a divisão de módulo e calcular o poder de um número em scripts de bash.
ubuntu@ubuntu: ~ $ echo “10%4” | bc
2
ubuntu@ubuntu: ~ $ echo “10^2” | bc
100
Realizando operações aritméticas avançadas
Até agora, usamos o comando 'BC' para executar algumas operações aritméticas básicas, como adição, subtração, multiplicação, etc., agora; Nesta seção, usaremos o comando 'BC' para realizar algumas operações aritméticas avançadas. Discutiremos como podemos usar operadores de comparação, operadores lógicos ou booleanos, funções matemáticas avançadas e declarações condicionais em Bash usando o comando 'BC'.
Operadores de comparação
Os operadores de comparação pegam dois números, compare -os e depois retornem 1 ou 0 dependendo da comparação. Se a comparação for verdadeira, então o resultado é Verdadeiro (1); Caso contrário, é Falso (0). A seguir, alguns exemplos de operadores de comparação.
A seguir, alguns exemplos de operadores de comparação usados junto com o comando 'BC'.
ubuntu@ubuntu: ~ $ echo “5 == 5” | bc
1
ubuntu@ubuntu: ~ $ echo “4!= 4 ”| bc
0
ubuntu@ubuntu: ~ $ echo “2> 5” | bc
0
ubuntu@ubuntu: ~ $ echo “4<=4” | bc
1
Operadores booleanos
Os operadores booleanos ou lógicos são usados em declarações condicionais para realizar algumas decisões lógicas. A seguir estão os três operadores lógicos básicos.
Os exemplos a seguir ilustram como os operadores lógicos são usados com o comando 'BC'.
ubuntu@ubuntu: ~ $ echo “-5 && 0” | bc
0
ubuntu@ubuntu: ~ $ echo “-1 || 0 ”| bc
1
ubuntu@ubuntu: ~ $ echo “! 0 ”| bc
1
Declarações condicionais
As declarações condicionais são usadas para executar comandos específicos, dependendo da condição aplicada. A condição aplicada na declaração condicional envolve operadores lógicos e de comparação. A seguir, o exemplo de declarações condicionais com o comando 'BC'.
ubuntu@ubuntu: ~ $ a = 15
ubuntu@ubuntu: ~ $ b = 20
ubuntu@ubuntu: ~ $ echo 'if (a> b) impressão “a é maior” Else impressão “b é maior”' | bc -l
B é maior
No exemplo acima, a declaração verifica se A é maior que B ou não. Se A for maior que B, ele imprimirá "A é maior"; Caso contrário, ele imprimirá “B é maior.”Podemos aplicar qualquer condição usando operadores booleanos e de comparação no exemplo acima.
Funções matemáticas
O comando 'BC' também fornece algumas funções matemáticas embutidas que podemos usar sem defini-los. A seguir, estão algumas funções essenciais usadas com o comando 'BC' em Bash.
Essas funções podem ser usadas com o comando 'BC', como mostrado nos exemplos a seguir.
ubuntu@ubuntu: ~ $ pi = 3.1415
ubuntu@ubuntu: ~ $ echo “s ($ pi/2)” | bc -l
1
ubuntu@ubuntu: ~ $ echo “c ($ pi/2)” | bc -l
0
ubuntu@ubuntu: ~ $ echo “a (1)” | bc -l
0.7854
A raiz quadrada de um número pode ser calculada em Bash usando o comando 'BC', como mostrado na figura a seguir.
ubuntu@ubuntu: ~ $ echo “sqrt (4)” | bc -l
2
Ao tentar calcular a raiz quadrada de um número negativo, o shell lançará um erro de tempo de execução.
ubuntu@ubuntu: ~ $ echo “sqrt (-2)” | bc -l
Erro de tempo de execução (func = (principal), ADR = 4): raiz quadrada de um número negativo
O logaritmo natural de um número pode ser calculado em Bash usando o comando 'BC' da seguinte maneira.
ubuntu@ubuntu: ~ $ echo “l (2)” | bc -l
.69314718055994530941
Conclusão
Ao escrever scripts de automação em bash, às vezes precisamos de funções matemáticas avançadas e operadores lógicos para executar comandos. O comando 'BC' fornece muitas funções e operadores matemáticos avançados para realizar cálculos aritméticos de alto nível. Este tutorial discutiu usando o comando 'BC' para executar operações aritméticas avançadas em Bash.