diff --git a/main.py b/main.py index 6bd3e21..028a3aa 100644 --- a/main.py +++ b/main.py @@ -1,13 +1,51 @@ # main.py # Ponto de entrada da aplicação +from pathlib import Path +from . import scanner, copier def main(): # Mostrar menu e interagir com o utilizador # Receber caminho da origem e destino + caminho_pasta_origem = input("Introduza caminho da pasta de origem: ").strip() + if not Path(caminho_pasta_origem).is_dir(): + raise NotADirectoryError( + f"Erro: {caminho_pasta_origem} não é um directório válido" + ) + caminho_pasta_destino = input("Introduza caminho da pasta de destino: ").strip() + if not Path(caminho_pasta_destino).is_dir(): + print("Não foi encontrado directório de destino. a criar...") + Path(caminho_pasta_destino).mkdir(parents=True, exist_ok=True) # Escolher método de organização + categorizar_data: bool = ( + input("Categorizar por data? (s/N): ").strip().lower() == "s" + ) + usar_data_criacao: bool = False + if categorizar_data: + usar_data_criacao = ( + input("Usar data de criação (defeito, usar data modificação)? (s/N): ") + .strip() + .lower() + == "s" + ) + formato_data: str = input("Defina um formato de data (defeito: %d-%m-%Y): ").strip() + if not formato_data: + formato_data = "%d-%m-%Y" # Iniciar processo de backup - pass + lista_ficheiros = scanner.listar_ficheiros(caminho_pasta_origem) + if not lista_ficheiros: + print(f"Não foi encontrado nenhum ficheiro em {caminho_pasta_origem}") + return + else: + print(f"Encontrados {len(lista_ficheiros)} em {caminho_pasta_origem}") + copier.copiar_ficheiros_para_destino( + lista_ficheiros, + caminho_pasta_destino, + categorizar_data, + usar_data_criacao, + formato_data, + ) + print(f"Concluida a cópia de {len(lista_ficheiros)} para {caminho_pasta_destino}.") if __name__ == "__main__":