Cadastro em shell
Publicado por Perfil removido (última atualização em 23/09/2009)
[ Hits: 13.502 ]
Download cadnomeid_vinigren.sh
Um cadastro com nome e idade salvando em um arquivo texto. Possui pesquisa, excluir e editar, falta tratar a exclusão.
Se alguém quiser me dar algumas dicas estou aí, para tirar dúvidas também.
Estou iniciando em shell na faculdade.
Obrigado.
Vinicius
#!/bin/bash
bancodados=bd.txt
menu(){
clear
echo ".::Menu Principal::."
echo
echo "1. Novo Cadastro"
echo "2. Alterar Cadastro"
echo "3. Excluir Cadastro"
echo "4. Pesquisar Cadastro"
echo "5. Listar Cadastros"
echo "6. Sair"
echo
echo "Digite uma Opcao: "
read opcaom
case $opcaom in
1) cadastro ;;
2) altera ;;
3) exclui ;;
4) pesquisa ;;
5) lista ;;
6) sleep; clear; exit ;;
*) echo "Opcao nao Encontrada..."; echo ; menu ;;
esac
}
cadastro(){
clear
echo "Novo Cadastro..."
echo
arq='bd.txt'
if [ -f $arq ]
then
echo "Arquivo para Salvar Existe..."
else
echo "Arquivo para Salvar Não existe..."
echo "Criando Arquivo para Salvar..."
touch bd.txt
echo "Arquivo Criado com Sucesso..."
fi
echo
echo "Digite um Nome: "
read cadnome
echo "Digite uma Idade: "
read cadidade
echo
echo -n "Confirma? (s/n): "
read resp
if [ $resp = "s" ]; then
echo "Salvando..."
echo
echo "$cadnome ; $cadidade" >> $bancodados
else
echo "Cadastro nao Salvo..."
fi
sleep 3
echo "Tecle enter para voltar ao Menu"
read
menu
}
pesquisa(){
clear
echo "Pesquisando..."
echo
echo "Digite o nome para Pesquisar: "
read pesqnome
echo "Nomes Encontrados..."
grep -i $pesqnome $bancodados
echo
sleep 3
echo "Tecle enter para voltar ao Menu"
read
menu
}
lista(){
clear
echo "Listando..."
echo
echo "Nomes na Lista..."
sort $bancodados
echo
sleep 3
echo "Tecle enter para voltar ao Menu"
read
menu
}
exclui(){
clear
echo "Excluindo..."
echo
echo "Nomes na Lista..."
sort $bancodados
echo
echo "Digite um nome para Excluir: "
read exnome
echo
sleep 1;
cat $bancodados | grep -iv $exnome > bdtmp.txt
rm $bancodados
cp bdtmp.txt $bancodados
rm bdtmp.txt
echo "Excluido..."
echo
sleep 3
echo "Tecle enter para voltar ao Menu"
read
menu
}
altera(){
clear
echo "Alterando..."
echo
echo "Nomes da Lista..."
sort $bancodados
echo
echo "Digite o nome para Alterar: "
read altnome
cat $bancodados | grep -iv $altnome > bdtmp.txt
rm $bancodados
cp bdtmp.txt $bancodados
rm bdtmp.txt
echo "Digite a nova Idade: "
read altidade
echo "$altnome ; $altidade" >> $bancodados
echo
echo "Alterando..."
sleep 3
echo "Tecle enter para voltar ao Menu"
read
menu
}
menu
Backup PostgreSql por DataBases
Script de backup para cd-rw e outro local (pasta mapeada)
Agenda de contaos usando dialog
Cinnamon seria a aposta acertada frente às outras interfaces gráficas mais populares?
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Vou destruir sua infância:) (8)
Interface gráfica com problema (2)
Instalar Linux em notebook Sony Vaio VPCEG13EB (13)









