Cadastra filmes
Publicado por Vanderson Lucio Rodrigues 18/12/2005
[ Hits: 6.556 ]
Homepage: http://www.vandersongold.com.br
Oá pessoal, esse script mostra de forma simples o uso de manipulacao do cursor na tela, manipulcao de arquivos textos, entrada de dados, etc...
Serve legal como exemplo.
[]'s
#!/bin/bash # Script para fazer cadastro de filmes que ja foram assistido pelo # usario. # # Por: Vanderson Lucio <vanderson.gold@gmail.com> # Dezembro de 2005 # # IMPORTANTE: esse script possui algumas opcoes de comandos que # funcionam apenas no bash. Como por exemplo: a opcap '-p' do comando 'echo' # declaracao de variaveis globais DIR=$HOME/.filmes/ NOME=filmes.txt ARQ="$DIR/$NOME" # Menu principal do script menu() { OK= until [ "$OK" ] do clear echo -e " Opcao Acao ===== ==== 1 Adicionar Filme 2 Remover Filme 3 Pesquisar Filme 4 Listar Filmes 5 Sair do Script \c " echo -e "\n" tput smso # terminal em video reverso read -p "Escolha Uma das Opcoes Acima (1-5): " opcao tput sgr0 # terminal volta ao normal OK=1 # torna a opcao como sendo verdadeira case "$opcao" in 1) echo -e "Adicionar filmes <em construcao>" adicionar ;; 2) echo -e "Remover filmes <em construcao>" remover ;; 3) echo -e "Pesquisar filmes <em construcao>" pesquisar ;; 4) echo -e "Listar filmes <em construcao>" cat $ARQ ;; 5) echo -e "Ate a proxima" exit 0 ;; *) echo -e "Erro: Opcao '$opcao' desconhecida" OK= ;; esac done } pesquisar() { tput cup 12 0 tput ed echo "Pesquisa Filmes" read -p "Nome do Filme: " filme echo "FILME ATOR DIRETOR DATA" grep -i $filme $ARQ 2> /dev/null } checar_arquivo() { if [ ! -e $ARQ ]; then echo "Erro: Arquivo $ARQ nao encontrado." exit 2 fi if [ ! -w $ARQ ]; then echo "Erro: Sem permissao de gravar no arquivo" exit 3 fi } remover() { tput cup 12 0 tput ed echo "Pesquisa de Filmes: " read -p "Nome do Filme: " fm filme=`echo $fm | tr [a-z] [A-Z] ` result=`grep $filme $ARQ` grep -v "$filme" $ARQ > /tmp/$$ if [ ! -z "$result" ] ; then mv /tmp/$$ $ARQ else echo "Registro Nao encontrado." fi } adicionar() { if [ ! -e $ARQ ]; then mkdir -p $DIR touch $ARQ fi flag="a" until [ $flag = "x" ] do resp= tput cup 12 0 tput ed read -p "Nome do Filme: " fm filme=`echo $fm | tr [a-z] [A-Z] ` read -p "Ator Principal: " at ator=`echo $at | tr [a-z] [A-Z] ` read -p "Diretor: " dr diretor=`echo $dr | tr [a-z] [A-Z] ` read -n 2 -p "Data Na Qual Foi Assistido (DD/MM/AAAA): " dia; read -n 2 -p "/" mes read -n 4 -p "/" ano echo -e "\n" until [ "$resp" ] do resp="s" read -p "Deseja salvar o novo registro (s/n) ? " resp case $resp in s) echo "Filme:$filme Ator:$ator Diretor:$diretor Data:$dia/$mes/$ano" >> $ARQ sort -o $ARQ $ARQ # Ordena o arquivo break ;; n) break ;; *) echo "resposta invalida" resp= ;; esac done tput bold echo -e "\n" read -p " Pressione <ENTER> pra continuar ou x para voltar ao menu " flag tput sgr0 if [ $flag ] ; then if [ $flag != "x" ] ; then flag=a else menu fi fi done } ## Principal parte do script menu
Criando uma lixeira p/ o usuário
Solicitar senha para abrir programa
ip - Imprimi ip externo na tela
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
firefox nao guarda meus logins nos sites (1)
Instalar debian testing (13) "por cima" do debian 12 (2)
Erro de segmentação «Segmentation fault (core dumped)» ao retornar obj... (1)