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.4.tar.gz (6.0 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.4-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: python_fileutils-0.0.4.tar.gz
  • Upload date:
  • Size: 6.0 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.4.tar.gz
Algorithm Hash digest
SHA256 be9d94de479a9df6ba8a4252c906dff8a2c731e77d54c4b578f08c2ddfea5086
MD5 f7fc9a462e59058f1409d0388cb20e5c
BLAKE2b-256 62cda22d7d60d695b3d136b4c778d84d7b85f253fc60ee99285a8d1a4e437207

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for python_fileutils-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 38fefafaf457536f47a23d98b51c18f8c90ccf9098974adf513d37811bf89bbc
MD5 0e2b14a75ad985eb30ef40d0de7e0f98
BLAKE2b-256 9841b5164a7cd4b1e11a10d24c0626563b0c045acee09644218ca4f2cec43774

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