Skip to main content

Biblioteca utilitária para manipulação de arquivos

Project description

FileUtils - Gerenciamento de Arquivos em Python

Este projeto fornece utilitários para manipulação de arquivos em Python, incluindo listagem, cópia, movimentação, remoção e compactação de arquivos. Além disso, inclui testes unitários para garantir a correta funcionalidade dos métodos implementados.

📌 Funcionalidades

O módulo fileutils.py contém as seguintes funções:

  • Listagem de arquivos: list_files(source_dir, extensions, include_sub_dir=False)

    • Retorna uma lista de arquivos em um diretório com as extensões especificadas.
  • Movimentação de arquivos: move_files(files_to_move, destination_dir, verbose=True)

    • Move arquivos para um diretório de destino.
  • Remoção de arquivos: remove_files(file_list, verbose=True)

    • Remove arquivos do sistema.
  • Cópia de arquivos: copy_files(file_list, destination_dir, prefix="copy_", verbose=True)

    • Copia arquivos para um diretório de destino com um prefixo opcional.
  • Compactação de arquivos: zip_files(files_to_zip, output_zip, verbose=True)

    • Cria um arquivo ZIP contendo os arquivos especificados.
  • Extração de arquivos ZIP: unzip_files(zip_file, extract_to)

    • Extrai arquivos de um ZIP para um diretório específico.
  • Remoção de assinaturas digitais de arquivos: remove_signature(file_list, output_dir, sign_start="|9999|", encoding="utf-8", verbose=True)

    • Remove assinaturas digitais de arquivos a partir de um marcador específico.

🧪 Testes Unitários

O projeto inclui testes unitários para validar a funcionalidade das funções. Os testes são implementados nos seguintes arquivos:

  • list_files_test.py: Testa a listagem de arquivos no diretório.
  • copy_files_test.py: Testa a cópia de arquivos para um diretório de destino.
  • unzip_files_test.py: Testa a extração de arquivos ZIP.
  • zip_file_test.py: Testa a criação de arquivos ZIP.

Os testes utilizam unittest e podem ser executados com:

python -m unittest discover

🚀 Como Usar

  1. Clone este repositório:

    git clone https://github.com/seu-usuario/fileutils.git
    cd fileutils
    
  2. Instale as dependências:

    pip install tqdm
    
  3. Utilize os métodos diretamente no seu código Python, por exemplo:

    from fileutils import list_files, copy_files
    
    arquivos = list_files(source_dir="meu_diretorio", extensions=(".txt", ".csv"))
    copy_files(arquivos, destination_dir="backup")
    
  4. Execute os testes para verificar a integridade do código:

    python -m unittest discover
    

📜 Licença

Este projeto está sob a licença MIT.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python_fileutils-0.0.3.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

python_fileutils-0.0.3-py3-none-any.whl (5.3 kB view details)

Uploaded Python 3

File details

Details for the file python_fileutils-0.0.3.tar.gz.

File metadata

  • Download URL: python_fileutils-0.0.3.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for python_fileutils-0.0.3.tar.gz
Algorithm Hash digest
SHA256 2878e3cabb405be074eab7bd5735c5317ef896044cd407d179089c75a7a094cc
MD5 9821046232051964f0e1c0d3114af657
BLAKE2b-256 55106919fc4807a02d4df538c460edc4c7614e705e9de9a8deafc3e97b044744

See more details on using hashes here.

File details

Details for the file python_fileutils-0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for python_fileutils-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 057549b2dae7e0edc10dd3aa57de00a307ea9a1dd42961ca78e11a85ea3c7065
MD5 b4134f447992bf1f89ad64330f08c74f
BLAKE2b-256 bdd4061b3abfdf8c3648517f5c91ab612f92f40be395eecff3407fe9f528318a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page