![wagner gabriel oliveira da silva wagner gabriel oliveira da silva](//static.vivaolinux.com.br/imagens/fotos/desconhecido.png)
wagnerg22
(usa Ubuntu)
Enviado em 25/08/2022 - 20:54h
Sou novo com Shell script e estou com muita dificuldade com esse projeto, qualquer ajuda será bem vinda!
Se a quantidade de argumentos fornecida não for igual a 2, somente uma ou nenhuma:
Imprimir "Uso nome_do_script diretório_origem diretório_destino"
O nome do script deve ser pego de forma automática
Exemplo (se o script se chamar sync.sh) a mensagem será:
Uso sync.sh diretório_origem diretório_destino
O diretório de origem é especificado no argumento 1
O diretório de destino é especificado no argumento 2
Se o diretório de origem não existe
Imprimir "diretorio de origem nao encontrado: diretório_origem" "Encerrando execução"
Exemplo (se o diretório de origem fornecido for ~/sync_dir e o mesmo não existir) a
mensagem será:
diretorio de origem nao encontrado: ~/sync_dir
Encerrando execução
Imprimir "Sincronização iniciada"
Se o diretório de destino ainda não existe,
Até que diretório passe a existir
Imprimir "Aguardando conexão com destino: diretório_destino" "**********" infinitamente.
Os asteriscos devem aparecer um de cada vez a cada segundo
Exemplo (se o diretório de destino se chamar ~/backup) a mensagem será:
Aguardando conexão com destino: ~/backup
Aguardando criação ou montagem do diretório de destino (encerramento com CTRL+C)
Aguardando até que diretório de destino seja criado
(Passo 7) Listar arquivos contidos no diretório de origem e salvar em arquivo
Para cada arquivo dessa Lista
Se arquivo existe no destino
Se arquivo na origem é mais recente do que no destino
Imprimir "Atualizando tipo arquivo"
Copiar arquivo do diretório de origem para o diretório de destino
Caso contrário (se arquivo na origem não é mais recente que no destino)
Imprimir "Ignorando tipo arquivo"
Caso contrário (se arquivo não existe no destino)
Imprimir "Criando tipo arquivo"
Copiar arquivo do diretório de origem para o diretório de destino
Excluir arquivo com listagem de arquivos (criado no Passo 7)
Imprimir "Sincronizacao encerrada"