Agenda Telefônica com Bash e Xdialog
Publicado por Aristoteles Rego de Araujo 16/07/2003
[ Hits: 13.486 ]
<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
Atualizar o Firefox do Linux Educacional 3
Removendo o ambiente Mate Desktop completamente
Script Simples para informações do Sistema
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
erro ao clonar repo github (5)
Problema Envio email GLPI Versao 10.0.15 (1)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (25)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba