Fazendo comparações no shell com números de ponto flutuante
Publicado por Luciano Hanzo em 25/05/2024
[ Hits: 1.012 ]
bc para essas operações.#!/bin/bash
# Fazendo comparações no shell, com números de ponto flutuante.
# Nesse exemplo, mostro como fazer um loop, com números de ponto flutuante.
# Repare que as variáveis estão com a primeira letra maiúscula.
Nu=1.11144 # Inicializa a variável Nu com um valor de ponto flutuante
Max=10.567 # Define o valor máximo para a comparação
# Realiza uma comparação inicial usando bc e armazena o resultado na variável Cond.
Cond=$(bc <<< "$Nu < $Max")
# Enquanto a condição for verdadeira (Cond igual a 1), o loop continuará executando.
while [ $Cond == 1 ]; do
echo "Número : $Nu" # Exibe o valor atual de Nu
# Incrementa Nu em 1.33 usando bc e atualiza o valor de Nu
Nu=$(bc <<< "$Nu + 1.33")
# Atualiza a condição para a próxima iteração do loop
Cond=$(bc <<< "$Nu < $Max")
done
Nu=1.11144: Define a variável Nu com um valor inicial de ponto flutuante.Max=10.567: Define a variável Max como o valor limite para o loop.Cond=$(bc <<< "$Nu < $Max"): Utiliza a calculadora bc para comparar Nu com Max. O resultado da comparação (1 para verdadeiro ou 0 para falso) é armazenado na variável Cond.while [ $Cond == 1 ]; do: O loop continuará executando enquanto Cond for igual a 1 (ou seja, enquanto Nu for menor que Max).echo "Número : $Nu": Exibe o valor atual de Nu no terminal.Nu=$(bc <<< "$Nu + 1.33"): Incrementa Nu em 1.33 usando bc e atualiza o valor de Nu.Cond=$(bc <<< "$Nu < $Max"): Recalcula a condição para a próxima iteração do loop.bc. Adaptar este script às suas necessidades específicas permitirá que você realize operações matemáticas mais complexas diretamente no seu shell script.OverWatch 2 - Abrindo portas do jogo no Iptables.
Multitail - Monitore vários logs em tempo real
Contar e ordenar a quantidade de ocorrências de cada linha em um arquivo
Shell script - Gerenciador de processos
Listando os 5 maiores subdiretórios no GNU/Linux
Papagaiando o XFCE com temas e recursos
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
Tiling automático no KDE Plasma
SNMP Scan no OCS Inventory só funciona com HTTPS corretamente configurado
Removendo jogos e bloatware do KDE no Gentoo
GOG confirma suporte oficial ao sistema Linux: "o trabalho começo... (2)
Links importantes de usuários do vol (3)
Para os fãs de DOOM, um vídeo do Romero (com dublagem em pt-br disponí... (2)









