Skip to main content

ZenCRC command-line tool for CRC32 stuff.

Project description

ZenCRC

A modern command line tool for CRC32 checksums and verification.

Installation

ZenCRC is packaged as a Python package and can be installed using pip, pipx, or other Python package managers.

In the package directory, run:

pip install .

Or install from PyPI:

pip install zencrc

Usage

This section will explain all the functions and options available in ZenCRC:

Basic help

zencrc --help

A more concise version of this help can be found by using the --help or -h option.

Append Mode

zencrc -a {file}
zencrc --append {file}

You can append a CRC32 checksum to a filename by using the --append or -a option. Takes a positional argument {file} or {files} at the end of the command. The CRC will be appended to the end of the file in the following format:

filename.ext --> filename [CRC].ext

For example: $ zencrc -a [LNS]Gin no Saji [720p-BD-AAC].mkv

will return: [LNS]Gin no Saji [720p-BD-AAC] [72A89BC1].mkv

Verify Mode

zencrc -v {file}
zencrc --verify {file}

You can verify a CRC32 checksum in a filename by using the --verify or -v option.

Takes a positional argument {file} or {files} at the end of the command.

This will calculate the CRC32 checksum of the file and check it against the CRC in the filename of the said file, output the status of that file and the CRC that the program calculated.

If the filename does not contain a CRC, the program will still calculate and output the CRC32 of that file.

Currently, no functionality exists to check files with a CRC32 in their name but it will be added to a future version.

SFV file out

zencrc -s {file_out.sfv} {file(s)}
zencrc --sfv {file_out.sfv} {file(s)}

You can output the calculated checksums to a .sfv file using this option.

SFV file in / SFV file verify

zencrc -c {file_out.sfv} {file(s)}
zencrc --check-sfv {file_out.sfv} {file(s)}

You can verify .sfv files using this option.

Recursion

zencrc -r -{a|v|s|c}

This function scans directories recursively and applies the chosen operation to all files within the directory tree. Simply add the -r or --recurse flag to any command.

New in Version 0.9.4

Modern Python Packaging

  • Migrated to pyproject.toml for modern Python packaging
  • Better dependency management
  • Type hints throughout the codebase

Improved CLI Experience

  • Migrated from argparse to Click for better command-line interface
  • Colorized output for better readability
  • Progress bars for long-running operations
  • Fixed issues when using multiple operations together

Performance Improvements

  • Optimized directory traversal for better performance with large directory trees
  • More efficient file handling
  • Better error handling and reporting

Cross-Platform Support

  • Fixed file structure recursion issues on Windows
  • Better path handling using pathlib

Future Development

A GUI

  • A graphical interface is planned for a future release
  • Will use this CLI tool as the core engine

Additional File Format Support

  • Support for additional checksum formats
  • Better integration with media management tools

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

zencrc-0.9.10.tar.gz (22.7 kB view details)

Uploaded Source

Built Distribution

zencrc-0.9.10-py3-none-any.whl (22.1 kB view details)

Uploaded Python 3

File details

Details for the file zencrc-0.9.10.tar.gz.

File metadata

  • Download URL: zencrc-0.9.10.tar.gz
  • Upload date:
  • Size: 22.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for zencrc-0.9.10.tar.gz
Algorithm Hash digest
SHA256 ba42131803f0346739d60fdcd67149ec1eef0aa02f3bc6fd40297f8018899da3
MD5 91b21c881225f1ff690a03079f06d86e
BLAKE2b-256 31fa8d89ed330498b2c3bf4556c14330eea6ae082ee0a3172758d51f8e10712e

See more details on using hashes here.

Provenance

The following attestation bundles were made for zencrc-0.9.10.tar.gz:

Publisher: publish.yaml on kazuma-desu/python-zencrc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zencrc-0.9.10-py3-none-any.whl.

File metadata

  • Download URL: zencrc-0.9.10-py3-none-any.whl
  • Upload date:
  • Size: 22.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for zencrc-0.9.10-py3-none-any.whl
Algorithm Hash digest
SHA256 ebeebe56fb93e90ce7a8fc1d7e3981ff1c0e42c5d5015fbf69156d85f77010e5
MD5 12ea3de7204b61bb9964e4424785bf4a
BLAKE2b-256 8cdd80e8b71d2ee0047ab02950d752dd85155bc4def08ffe8f0f16e66faec984

See more details on using hashes here.

Provenance

The following attestation bundles were made for zencrc-0.9.10-py3-none-any.whl:

Publisher: publish.yaml on kazuma-desu/python-zencrc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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