Script simples para cálculos com dialog
Publicado por Ewerton Tiago (última atualização em 14/03/2010)
[ Hits: 8.121 ]
Um script bem simples que usa dialog para dar uma aparência mais amigável. O script realiza o cálculo que o usuário escolhe e depois informa que tipo de operação ele realizou.
# ! /bin/bash
# Calculadora Simples Shell Script Utilizando dialog#
# Autor: Ewerton Tiago Azevedo
# Data: 10-03-2010
tmp="/tmp/calc.tmp"
tmp2="/tmp/calc2.tmp"
function calcula() {
rm -rf $tmp
title= "Calculadora 1.0"
dialog --backtitle "$title" --infobox 'Escolha o Tipo de Operação:' 0 0
dialog --backtitle "$title" --radiolist 'Escolha o operador:' 0 0 0 'Soma' '+' 'On' 'Subtração' '-' 'off' 'Multiplicação' '*' 'off' 'Divisão' '/' 'off' 2> $tmp
op=$(cat $tmp | tail -n 1);
if [ $op = 'Soma' ]; then
dialog --inputbox 'Digite um número:' 0 0 2>$tmp
num1=$(cat $tmp |tail -n 1)
dialog --inputbox 'Digite mais um número:' 0 0 2>$tmp2
num2=$(cat $tmp2 |tail -n 1)
result=$((num1+num2))
dialog --infobox 'Resultado: '$result 0 0
sleep 3
dialog --infobox 'Você está Somando' 0 0
elif [ $op = 'Divisão' ]; then
rm -rf $tmp
rm -rf $tmp2
dialog --inputbox 'Digite um número:' 0 0 2>$tmp
num1=$(cat $tmp |tail -n 1)
dialog --inputbox 'Digite mais um número:' 0 0 2>$tmp2
num2=$(cat $tmp2 |tail -n 1)
sleep 1
result=$((num1/num2))
dialog --infobox 'Resultado: '$result 0 0
sleep 2
dialog --infobox 'Você está Dividindo' 0 0
else
echo "Existe Algum erro"
fi
}
calcula
Padronização de usuários em vários micros
[ResuLinux] Discador Claro 3G em dialog
Prova LPI em shell script - com contador de acertos
Nenhum comentário foi encontrado.
Berry Bank: Criando um Banco Digital Gamificado para seus Filhos com Gentoo, Flask e Tailscale
Papagaiando o XFCE com temas e recursos
Instale o DOOM Retro no Gentoo facilmente via Overlay
Steam (Flatpak) rodando jogos em partição NTFS
O dock Plank + U-Launcher deixam qualquer desktop mais produtivo
Instalar Linux em notebook Sony Vaio VPCEG13EB (17)
Alguém tem que acabar com ANATEL!!! (10)
O que você está ouvindo agora? [2] (229)









