Agenda Telefônica com Bash e Xdialog
Publicado por Aristoteles Rego de Araujo 16/07/2003
[ Hits: 13.645 ]
<p>Fiz esta agenda telefônica usando o Xdialog para ser usada em modo gráfico. Ela é bem simples. Quem quiser colaborar com idéias e mudanças no script é só mandar e-mails. </p>
<p>É necessário esta no modo gráfico e ter o Xdialog instalado </p>
========================================== arquivo agenda.sh ------------------------------------------------------------------- #!/bin/bash # agenda.sh # Simples Agenda Telefonica para X-Windows # Script criado por Aristoteles Araujo (Thothy) # Licenca: GPL # Pendencias: XFree, Xdialog, Shell Bash # # Modulo de menu da agenda # # Testa Xdialog DIALOG=`which Xdialog` if [ ! $DIALOG ] ;then echo " Xdialog nao encontrado" exit 1 fi # # Path do icone icone="/usr/X11R6/include/X11/pixmaps/mouse.xpm" #Messagem da janela mens0="Especial para o Viva o Linux" #Mensagem para o usuario mens1="Informa o nome - telefone" #variaveis arqtmp="/$HOME/.agenda_temp" DIA=Xdialog # Dialogo Menu $DIA --sterr --title "Agenda Telefonica" --backtitle "$mens0" --icon "$icone" --center --cancel-label "Sair" --menu \ "Selecione sua opcao" 16 40 5 \ "1" "Incluir na agenda" \ "2" "Pesquisar nome/telefone" \ "3" "Editar agenda" \ "4" "Organizar agenda" \ "5" "Creditos" > /dev/null 2> $arqtmp opcao=`cat $arqtmp` #Menu case $opcao in 1) ./agcad.sh;; 2) ./agbusc.sh;; 3) ./agedit.sh;; 4) ./agsort.sh;; 5) $DIA --sterr --left --title "Creditos" --msgbox \ " Script criado por \n Aristoteles Araujo (Thothy) \n thothy@bol.com.br \n \n Licenca GPL \n Brasil 2003" \ 0 0 ./agenda.sh esac ========================================== arquivo agcad.sh ------------------------------------------------------------------- #!/bin/bash # agcad.sh # Modulo de cadastro de agenda # # Path do icone icone="/usr/X11R6/include/X11/pixmaps/keyboard.xpm" # Mensagem da janela mens0="Especial para o Viva o Linux" # Mensagem para o usuario mens1="Informa o nome - telefone" #Variaveis arqtmp="/$HOME/.agenda_temp" DIA=Xdialog # Dialogo de Cadastro $DIA --sterr --title "Agenda Telefonica" --backtitle "$mens0" --icon "$icone" --center --inputbox \ "Digite o nome e o telefone" 10 40 > /dev/null 2>> agenda.db ./agenda.sh ========================================== arquivo agbusc.sh ------------------------------------------------------------------- #!/bin/bash # agbusc.sh # Modulo de busca na agenda # # Path do icone icone="/usr/X11R6/include/X11/pixmaps/keyboard.xpm" # Mensagem da janela mens0="Especial para o Viva o Linux" # Mensagem para o usuario mens1="Informa o nome - telefone" # Variaveis arqtmp="/$HOME/.agenda_temp" DIA=Xdialog # Dialogo de Cadastro $DIA --sterr --title "Agenda Telefonica" --backtitle "$mens0" --icon "$icone" --no-cancel --center --inputbox \ "Digite o nome ou telefone \n para busca na agenda" 10 40 > /dev/null 2> $arqtmp busca=`cat $arqtmp` resultado=`grep -i $busca agenda.db > $arqtmp` if [ -n $busca ];then #Mostra mensagem de erro $DIA --sterr --title "Agenda Telefonica" --msgbox \ "Informe nome ou telefone \n para perquisar" 0 0 \ exit else # Mostra resultado da pesquisa $DIA --sterr --backtitle "Resultado da pesquisa por $busca" --title "Agenda Telefonica" --no-cancel --logbox $arqtmp 15 50 \ fi #Chama o menu ./agenda.sh exit ========================================== arquivo agedit.sh ------------------------------------------------------------------- #!/bin/bash # agedit.sh # Modulo de edicao da agenda # # Path do icone icone="/usr/X11R6/include/X11/pixmaps/keyboard.xpm" # Mensagem da janela mens0="Especial para o Viva o Linux" # Mensagem para o usuario mens1="Informa o nome - telefone" # Variaveis arqtmp="/$HOME/.agenda_temp" DIA=Xdialog # Mostra resultado da pesquisa $DIA --sterr --backtitle "$mens0" --title "Agenda Telefonica" --no-cancel --editbox agenda.db 15 50 > /dev/null 2> $arqtmp # Confirma Atualizacao $DIA --sterr --title "Confirmacao" --yesno \ "Confirma atualizacao da base de dados?" \ 0 0 \ if [ $? == 0 ]; then cp agenda.db agenda.db.bak atualiza=`cat $arqtmp > agenda.db` fi #Chama o menu ./agenda.sh ========================================== arquivo agsort.sh ------------------------------------------------------------------- #!/bin/bash # agsort.sh # Modulo de organizacao da agenda # # Path do icone icone="/usr/X11R6/include/X11/pixmaps/keyboard.xpm" # Mensagem da janela mens0="Especial para o Viva o Linux" # Mensagem para o usuario mens1="Informa o nome - telefone" # Variaveis arqtmp="/$HOME/.agenda_temp" DIA=Xdialog # Confirma Atualizacao $DIA --sterr --title "Confirmacao" --yesno \ "Confirma organizacao da base de dados?" \ 0 0 \ if [ $? == 0 ]; then cp agenda.db agenda.db.bak sort agenda.db -f -d -o agenda.db fi #Chama o menu ./agenda.sh
cieQemu - Interface para o qemu (Shell & Xdialog)
Criar backup do Diretorio /home
Exemplo de Shell-Script (CORRIGIDO!)
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (7)