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.
[ Hits: 70.825 ]
Por: Iuri Cernov em 15/09/2004
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
Página anterior
Páginas do artigo
1.
Introdução
2.
Sintaxe
3.
Infobox e Msgbox
4.
YesNo
5. InputBox
Outros artigos deste autor
Operadores de redirecionamento
Criando uma calculadora com o Glade
Leitura recomendada
Desinstalando todos os programas instalados a partir de uma data específica
Script de backup full + diferencial + compactador + restauração
Enviando mensagens para usuários da rede
Solução para provedores - Receber aviso no celular quando ocorrer perda de pacote, hosts parados ou pacotes duplicados
Como Configurar seu Lucent Winmodem
Comentários
Maneiro utilizar Dialog em shell :)
fico massa o artigo
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.
Mensagem
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.
Realmente muito bom, isto ajudará principalmente os usuários de seus scripts.
Show
Mensagem
Realmente muito bom, isto ajudará principalmente os usuários de seus scripts.
Show
muito bom o artigo, parabéns, já havia estudado um pouco sobre scripts em dialog, agora vai ficar mais fácil ainda.
Vlw
Mensagem
muito bom o artigo, parabéns, já havia estudado um pouco sobre scripts em dialog, agora vai ficar mais fácil ainda.
Vlw
Muito legal esse artigo!
Mas poderia dar mais exemplos... ;)
Falou...
Mensagem
Muito legal esse artigo!
Mas poderia dar mais exemplos... ;)
Falou...
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.
Mensagem
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.
Muito bom... gostei do seu artigo...
parabéns...
Mensagem
Muito bom... gostei do seu artigo...
parabéns...
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.
Mensagem
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.
Muito bom esse artigo!!!,parabéns!!!
Mensagem
Muito bom esse artigo!!!,parabéns!!!
Contribuir com comentário
Enviar