/Trabalho2_TSO

Segundo projeto de Tópicos em Sistemas Operacionais: Programa gerenciador de Agenda de Endereços em Bash

Primary LanguageShell

Crie uma agenda de endereços utilizando o BASH que possua dois modos de funcionamento: Modo interativo e não interativo.

No modo interativo, deve conter um menu com as seguintes opções:

  • Adicionar entrada
  • Pesquisar na Agenda
  • Remover entrada
  • Editar entrada
  • Exibir agenda
  • Sair

1 - Pesquisar: Quando pesquisar por "Fulano", deve retornar o registro com nome Fulano. 2 - Adicionar: Dados mínimos: Nome, Sobrenome, email, telefone. Os dados devem ser salvos em um arquivo texto após confirmação do usuário. Identificar que já existe registro com mesmo nome e perguntar ao usuário se deseja atualizar o registro existente. 3 - Remover: Pesquisa o nome, encontra no arquivo texto e remove o registro do arquivo. 4 - Editar: Pesquisa o nome, encontra no arquivo texto, exibe para o usuário, pegunta que campo do registro deseja editar, realiza a alteração e exibe o registro alterado. 5 - Exibir agenda: Lista os dados de todos os registros da agenda.

O script deve tratar o sinal Control+C e perguntar ao usuário se deseja finalizar a agenda.

No modo não interativo, o usuário deve especificar os parâmetros na linha de comando. Formas de uso:

  • Adicionar: script.sh -a nome sobrenome email telefone
  • Listar: script.sh -l
  • Remover: script.sh -d nome
  • Pesquisar: script -s nome
  • Editar: script -e nome sobrenome email telefone(caso o nome nao exista, deve dar a opção de inserir um novo registro)

Deve possuir o parâmetro help para exibir a sintaxe do comando: script help

Para a implementação do modo não interativo, utilize o comando getopts. Referência de uso de getopts: http://www.dicas-l.com.br/arquivo/getopts_opcoes_em_bash_script.php#.XIp_DyhKiUk