Script simples para cálculos com dialog
Publicado por Ewerton Tiago (última atualização em 14/03/2010)
[ Hits: 7.817 ]
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
Busca e copia arquivos renomeando-os conforme a máscara
Logs do daemontools - tradução de timestamp
Nenhum comentário foi encontrado.
Criar entrada (menuentry) ISO no Grub
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar o VIM 9.1 no Debian 12
Como saber o range de um IP público?
Muitas dificuldades ao instalar distro Linux em Notebook Sony Vaio PCG-6131L (VPCEA24FM)
Slackpkg+ (Slackpkg Plus) está de volta!
Como dividir duas janelas igualmente e lado-a-lado na sua tela
Problemas com SQL em objeto TLabel ... [RESOLVIDO] (3)
instalar o Linux em computadores Acer novos (1)