sexta-feira, 7 de fevereiro de 2014

Shell Script com Dialog - Usando o CHECKLIST (dialog --checklist)

Segue o resumo de comandos e conceitos vistos em Sala de Aula.
Este é um material de apoio aos meus alunos que tem todo embasamento durante as aulas presenciais.

Você pode encontrar todos os resumos de aula no link abaixo:

Estas aulas são dedicadas ao uso de Shell Script com o recurso Dialog.

"O Dialog é um programa usado para desenhar interfaces amigáveis para o usuário, com botões e menus, a partir de um Shell Script." (aurelio.net/shell/dialog)

Recomendo a leitura do melhor manual em português de DIALOG que existe: http://aurelio.net/shell/dialog/

Para usar o recurso de caixas com o dialog, é necessário que você o instale na sua distribuição.
Caso você use DEBIAN/MINT/UBUNTU e derivados, faça:

# apt-get install dialog
# yum install dialog

Caso você use REDHAT/FEDORA/CENTOS e derivados, faça:

Este exemplo, usaremos o recurso checklist, que exibe uma caixa de múltipla escolha para o usuário escolher um ou mais ítens. Este valor pode ser capturado pelo programador.

Você pode testar direto na linha de comando, ou usar um script.

Faça você mesmo:

# dialog --checklist "Escolha Sua Opcao"  0 0 0 Item1 'Jogar' on Item2 'Dormir' off Item3 'Trabalhar' off

Veja um exemplo mais completo utilizando o script abaixo que produz as seguintes telas:






Código fonte do Script:

#!/bin/bash
##########################################################
# Scripts de Exemplo de Uso de Shell Script com Dialog   #
# Obs: Nao esqueca que para funcionar o pacote dialog    #
#      tem que estar instalado no seu S.O.               #
#                                                        #
# Autor: Dailson Fernandes - contato@dailson.com.br      #
# Licenca: GNU/GPL                                       #
##########################################################
# Exibe uma mensagem simples para o usuario.
dialog --msgbox " Exibindo Checklist \n para o Usuario" 7 30

# Obs: A barra invertida quebra a linha esteticamente,
#      Porem nao ha quebra no comando.

dialog --checklist 'Escolha Sua Opcao' \
       0 0 0 Item1 'descricao do Item1' on \
             Item2 'Descricao do Item2' off \
             Item3 'Descricao do Item3' off \
             Item4 'Descricao do Item4' off \
             Item5 'Descricao do Item5' off \

dialog --msgbox "Capturando as escolhas do Usuario" 7 30

# Capturando as escolhas do usuario.
# Note a presenca do --stdout e do subshell $(comando)
ESCOLHA=$(dialog --stdout --checklist 'Escolha Sua Opcao' \
       0 0 0 Item1 'descricao do Item1' on \
             Item2 'Descricao do Item2' off \
             Item3 'Descricao do Item3' off \
             Item4 'Descricao do Item4' off \
             Item5 'Descricao do Item5' off)

dialog --msgbox "Os Itens Escolhidos foram:: $ESCOLHA" 7 30

clear

Nenhum comentário:

Postar um comentário