Pular para o conteúdo

Incrementando seus scripts com dialog

Esse artigo nos introduz ao fantástico mundo do dialog, um software usado para incrementar seus shell scripts com caixas de diálogo bem amigáveis, muito mais agradáveis que as famosas telas pretas do terminal. Aprenderemos a criar caixas de informação, texto, confirmação, input. Enfim, leia e comprove.
Iuri Cernov ice
Hits: 72.833 Categoria: Shell Script Subcategoria: Miscelânea
  • Indicar
  • Impressora
  • Denunciar

Parte 5: InputBox

Uma outra forma de receber dados do usuário é usando o InputBox. A sintaxe é:

dialog [opções] --inputbox 'abc' 0 0 [inicial]

Tente digitar no console:

$ dialog --inputbox 'Digite seu nome:' -1 -1 'Aqui'

Para conseguir o texto digitado é só redirecionar STDERR, que se dá pelo operador de redirecionamento 2>. Veja como:

$ dialog --inputbox 'Digite seu nome:' -1 -1 'Aqui' 2> /home/iuri/nomiducara

Após digitar alguma coisa, consulte o arquivo /home/iuri/nomiducara e verá exatamente o que você digitou.

Para passar este valor para uma variável, você pode fazer:

MinhaVar=`cat /file`
OU
MinhaVar=$(cat /file)

Vamos ver um shell script bem simples: Uma calculadora de soma:

#!/bin/sh
# INICIO

dialog --backtitle Calculadora --inputbox 'Digite o primeiro valor:' -1 -1 '0' 2> /tmp/1
dialog --backtitle Calculadora --inputbox 'Digite o segundo valor:' -1 -1 '0' 2> /tmp/2

Valor1=$(cat /tmp/1)
Valor2=$(cat /tmp/2)
Res=$(expr $Valor1 + $Valor2)

dialog --backtitle Calculadora --infobox "O resultado é: $Res" -1 -1

# FIM
   1. Introdução
   2. Sintaxe
   3. Infobox e Msgbox
   4. YesNo
   5. InputBox

Criando uma calculadora com o Glade

Operadores de redirecionamento

Conectando-se à Internet via ADSL com PPPoE no OpenBSD

BigBashView, interface gráfica para o seu shell script

Criando uma ISO bootável do OpenBSD

Desinstalando todos os programas instalados a partir de uma data específica

KDialog com Shell Script - Conversão de slides JPG para projetores com suporte a miniaturas de imagens

#1 Comentário enviado por y2h4ck em 15/09/2004 - 12:02h
Maneiro utilizar Dialog em shell :)

fico massa o artigo
#2 Comentário enviado por engos em 15/09/2004 - 13:23h
Tirando o fato de você ter feito um somador e chamado de calculadora, o artigo ficou muito bom.

Não acho muito interessante fazer shell script com dialogos, mas com certeza ter essa opção é muito bom.

Gostei bastante do artigo,

Parabéns.
#3 Comentário enviado por GrupoFimdeprova em 16/09/2004 - 10:29h
Realmente muito bom, isto ajudará principalmente os usuários de seus scripts.
Show
#4 Comentário enviado por agk em 16/09/2004 - 21:35h
muito bom o artigo, parabéns, já havia estudado um pouco sobre scripts em dialog, agora vai ficar mais fácil ainda.
Vlw
#5 Comentário enviado por removido em 11/01/2005 - 15:48h
Muito legal esse artigo!
Mas poderia dar mais exemplos... ;)
Falou...
#6 Comentário enviado por jairpn em 09/08/2006 - 16:40h
Já notaram que sempre tem uma íngua roxa para criticar os artigos deste site. Em vez de dar incentivo a íngua sempre coloca que, "tirando isso ou aquilo", ficaria melhor.
#7 Comentário enviado por removido em 09/10/2007 - 13:41h
Muito bom... gostei do seu artigo...

parabéns...
#8 Comentário enviado por emanoeljulio em 15/12/2008 - 15:36h
Salve Iuri Cernov
Estou escrevendo um scrupt e usando o dialog estou com um problema qm sabe vc pode me ajudar.

exemplo

dialog \
--title 'O que vc qr fazer???'
--checklist 'Escolha uma ou mais opções:' 0 0 0 \
ifconfig 'Mostra detalhes sobre as interfaces de rede'
ls 'Lista o diretório'

eu qro que após escolher as opções ele execute os comandos, em meu caso são funções que eu criei.
#9 Comentário enviado por evamberto em 11/10/2012 - 22:00h
Muito bom esse artigo!!!,parabéns!!!

Contribuir com comentário

Entre na sua conta para comentar.