Agenda Telefônica com Bash e Xdialog
Publicado por Aristoteles Rego de Araujo 16/07/2003
[ Hits: 13.502 ]
<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
Backup somente se o notebook estiver conectado à rede wireless
Excluir Arq. Velhos de um Diretório ATUALIZADO!
Excluir Arquivos Velhos de um Diretório (limparDir.sh)
Altenartiva p/ montar/desmontar disquete em sistemas Debian
Atualizar o macOS no Mac - Opencore Legacy Patcher
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Instalando Zoom Client no Ubuntu 24.04 LTS
Instalando Zoom Client no Fedora 40
Instalando Navegador Firefox no Debian 12
Bloqueando propagandas no Youtube e outros sites com o uBlocker Origin
Clone de schema - Postgres (2)
Dualboot Fedora 40 e LinuxMint 21 (12)
Dificuldade em ler binário (6)
Em que pasta/arquivo ficam as configurações das janelas em derivados d... (1)