telefone
Publicado por Perfil removido 17/10/2005
[ Hits: 7.208 ]
Baseado em Caderninho Telefonico, by pop_lamen Versao 0.1
Publicado por Wainer Chiari em 10/09/2004 no VOL
Endereço da publicação original:
http://www.vivaolinux.com.br/scripts/verScript.php?codigo=594
A grande modificação que existe é na estética e nas forma como as funções são implementadas, existem maior número de opções e os telefones podem ser catalogados em categorias, as buscas também pode ser realizada por categorias
IMPORTANTE! Leia o começo do script antes de usar
#!/bin/sh # Baseado # "---------------------------------------" # " Caderninho Telefonico, by pop_lamen " # " Versao 0.1 " # " email: r0xing@bol.com.br" # "---------------------------------------" # Publicado por Wainer Chiari em 10/09/2004 no VOL # Endereço da publicação # http://www.vivaolinux.com.br/scripts/verScript.php?codigo=594 # "---------------------------------------" # # A grande modificação que existe é na estética e nas forma como as funções são # implementadas, existem maior número de funções e os telefones podem ser # catalogados em categorias ... # As buscas também pode ser realizada por categorias # # ---------------------------------------- # Arquivo telefones: ~/.telefones # Limitações : O alinhamento não comporta mais de 8 dígitos para telefone e # também não suporta mais de 35 carateres para o nome do usuários # Consequências : Se ocorrer violação das limitações apenas o visual ficará # comprometido, o script funcionará a 100 % # ---------------------------------------- # Bom já que se trata de um script baseado em outro, os arquivos fontes são # 100 % compatíveis entre si, guardando algumas ressalvas # # 1 - O script original não tem suporte a categorias de telefones # - Conclusão : Não adianta usar o arquivo anterior e esperar que # simplesmente funcione a tal catalogação de categorias # - Solução : Edite o arquivo ~/.telefones # # 2 - A estética entre os arquivos dos scripts é diferente no alinhamento. # - Conclusão : Fica feio misturar estéticas, mas funciona do mesmo jeito # - Solução : Edite o arquivo ~/.telefones # # # Não há nada que um editor de textos não consiga resolver # com MUITA facilidade, para isso, crie uns novos dados de telefone, # e veja a diferença, verá que existe um alinhamento nome, telefone # e categoria, use espaços, não use tab, e é só. # Se quiser, pode aproveitar e colocar as categorias da forma que # apareceram nas novas entradas. # # O arquivo onde são guardados os telefones é o ~/.telefones. # # ---------------------------------------- # A compatibilidade reversa, ou seja, do arquivo gerado nessa versão com o arquivo # gerado pelo script original é de 100 %, entretanto, as categorias deixarão de # ser preenchidas e, é claro, a estética volta a antiga. # # ---------------------------------------- # FAÇA UM BACKUP DO ARQUIVO ANTES DE QUALQUER MANIPULAÇÃO DO MESMO # NÃO ME RESPONSABILIZAREI POR QUALQUER DANO CAUSADO PELA PERDA ENVENTUAL DOS # TELEFONES MANTIDOS EM ~/.telefones # ---------------------------------------- # # Script modificado por : J. F. Mitre # # ---------------------------------------- FONTE=~/.telefones TMP=/tmp/cdnho.fones banner (){ echo "------------------------------------------------------------------------------" echo " Caderno Telefônico " echo "------------------------------------------------------------------------------" echo "$(wc -l $FONTE | awk '{printf ($1)}') Telefone(s) no total" echo echo } sair (){ clear exit 0 } lista(){ clear;banner echo "Selecione uma opção: Lista de telefones : [1] Lista completa [2] Residênciais [3] Celulares [4] Comerciais [5] De Recados [6] De Emergência [7] Outras categorias " read opcaolista case $opcaolista in 2) BUSCAR="Residêncial" ;; 3) BUSCAR="Celular" ;; 4) BUSCAR="Comercial" ;; 5) BUSCAR="Recados" ;; 6) BUSCAR="Emergência" ;; 7) BUSCAR="Outras" ;; *) BUSCAR=. ;; esac cat $FONTE | grep -i $BUSCAR > $TMP clear;banner echo "Foram encontrados `wc -l $TMP | awk '{printf($1)}'` telefones:" echo "------------------------------------------------------------------------------" echo cat $TMP |sort echo "------------------------------------------------------------------------------" echo "Pressione ENTER para sair" read VOLTAR main } busca (){ while : do clear;banner BUSCA= echo "Entre com o nome (ou parte) ou telefone a buscar" read BUSCA if [ -z $BUSCA ] then echo "Voce nao digitou nada !!!" echo "Digite alguma coisa, ou peça uma lista completa" else echo buscando... cat $FONTE | grep -i $BUSCA > $TMP clear;banner echo "Foram encontrados `wc -l $TMP | awk '{printf($1)}'` telefones:" echo "------------------------------------------------------------------------------" echo cat $TMP |sort echo "------------------------------------------------------------------------------" echo "Pressione ENTER para sair" read VOLTAR main fi done } categoria(){ clear echo "Selecionando categoria" echo " Selecione uma opção: [1] Residêncial [2] Celular [3] Comercial [4] Recados [5] Emergência [6] Outros " read tipotelefone case $tipotelefone in 1) TCATEGORIA="Residêncial" ;; 2) TCATEGORIA="Celular" ;; 3) TCATEGORIA="Comercial" ;; 4) TCATEGORIA="Recados" ;; 5) TCATEGORIA="Emergência" ;; 6) TCATEGORIA="Outras" ;; esac } adiciona (){ NOME= FONE= clear;banner echo "Digite o Nome a ser utilizado:" read NOME while [ -z "$NOME" ] do echo "Por favor, digite um nome:" read NOME done echo "Digite o telefone a ser adicionado:" read FONE while [ -z "$FONE" ] do echo "Por favor, digite um telefone:" read FONE done # obtendo a categoria do telefone categoria NUM=$(echo "$NOME" |wc -m) while [ "$NUM" -ge "36" ]; do echo "Nome muito grande" echo "Digite um nome menor" read NOME done while [ "$NUM" -lt "35" ]; do NOME=$NOME\ ; NUM=$(echo "$NOME" |wc -m) done if [ $FONE -ge 10 ]; then echo "Número de telefone muito grande" echo "Essa agenda ainda não é capaz de lidar com esse número" main fi echo -e " $NOME $FONE $TCATEGORIA" >> $FONTE } remover(){ clear echo "Digite o número de telefone ou o nome que deseja eliminar" echo "Digitando um nome serão eliminados todos os telefones da pessoa" read elimineesse echo if [ -z "$elimineesse" ]; then echo echo "Precisa digitar alguma coisa." echo read pause main fi echo "Esses telefones serão eliminados" echo "------------------------------------------------------------------------------" grep "$elimineesse" $FONTE echo "------------------------------------------------------------------------------" echo echo "Deseja Prosseguir ? [s/n]" echo "Uma cópia de backup será feita, mas substituirá um backup anterior" read prosseguir prosseg=0 while [ $prosseg == 0 ]; do case $prosseguir in n|N) prosseg=1; main ;; s|S) prosseg=1 rm -f $FONTE.bk &>/dev/null cp $FONTE $FONTE.bk sed -i /$elimineesse/Id $FONTE ;; *) echo "Escolha uma opção: [S]im, para eliminar o(s) telefone(s) [N]ão, para retornar ao menu principal";; esac done } limpar () { while : do clear;banner echo "Tem certeza que deseja apagar todos os numeros? [sim|nao]" read APAGAS case $APAGAS in SIM|sim) clear;banner cp $FONTE $FONTE.$(date +%Y-%m-%d).backup echo "Um backup foi realizado: $FONTE.$(date +%Y-%m-%d).backup." rm -f $FONTE $TMP echo "Arquivos apagados com sucesso" echo "Criando nova db..." touch $FONTE echo "Pronto!" sleep 2 break ;; s) echo "Voce deve digitar a palavra toda!";sleep 2 ;; *) break ;; esac done } main(){ if [ -w $FONTE ] then while : do clear banner echo "------------------------------------------------------------------------------" echo "Selecione uma opção" echo echo "[1] Listar telefones cadastrados" echo "[2] Buscar um nome ou telefone" echo "[3] Adicionar um novo telefone a lista" echo "[4] Remover um telefone da lista" echo "[5] Limpar os telefones existentes" echo "[6] Sair (Q)" echo read ACTION case $ACTION in 1|l|L) lista ;; 2|b|B) busca ;; 3|a|A) adiciona ;; 6|q|Q) sair ;; 5) limpar ;; 4|r|R) remover ;; *) echo "Resposta invalida" ;; esac done else # Criando um arquivo database caso não encontre o mesmo touch $FONTE main fi } main
Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
Script para desligamento automático do computador
Monitorando acessos on-line em log do squid com autenticação.
Logs do daemontools - tradução de timestamp
Nenhum comentário foi encontrado.
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
Arch Linux - Guia para Iniciantes (2)
Problemas ao instalar o PHP (11)
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (15)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)