quinta-feira, 13 de junho de 2013

Shell Script com Dialog - Usando o CALENDARIO (dialog --calendar)

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

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

# yum install dialog


Este exemplo, usaremos o recurso calendário. O calendário, além de exibir par ao usuário um calendário com a data do sistema ( ou com uma data pré-fixada), pode também capturar uma data que o usuário escolheu.
Você pode testar direto na linha de comando, ou usar um script.
Faça você mesmo:

dialog --calendar "Calendario Atual" 0 0

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








Código fonte deste 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.
# Obs: A barra invertida quebra a linha esteticamente,
#      Porem nao ha quebra no comando.
dialog --msgbox " Exibindo um Calendario \n \
Com a Data Capturada do Sistema" 0 0

# Exibe um calendario Com Ano,Mes e dia do Sistema
dialog --calendar "Calendario Atual" 0 0

dialog --msgbox " Exibindo um Calendario \n \
Com uma Data Especifica \n (Janeiro de 1972)" 8 40

# Exibe um calendario Com Ano,Mes especificado
dialog --calendar "Calendario de Janeiro de 1972" 0 0 01 01 1972

dialog --msgbox " Exibindo um Calendario \n \
Armazenando em uma variavel \n E exibido a escolha " 8 40

# Armazena a escolha do usuario na variavel DATA
# Note a presenca do --stdout e do subshell $(comando)
DATA=$(dialog --stdout --calendar "Escolha a Data de Pagamento" 0 0 )

dialog --msgbox "A Data Escolhida foi: $DATA" 0 0

clear

Baixe este script em:
http://www.reconstrucao.org/palestra/shell/dialog/calendar.sh
Baixe todos os scripts de exemplos de dialog: 
http://www.reconstrucao.org/palestra/shell/dialog/dialog.tar.gz 




Nenhum comentário:

Postar um comentário