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
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 |
ba42131803f0346739d60fdcd67149ec1eef0aa02f3bc6fd40297f8018899da3
|
|
MD5 |
91b21c881225f1ff690a03079f06d86e
|
|
BLAKE2b-256 |
31fa8d89ed330498b2c3bf4556c14330eea6ae082ee0a3172758d51f8e10712e
|
Provenance
The following attestation bundles were made for zencrc-0.9.10.tar.gz
:
Publisher:
publish.yaml
on kazuma-desu/python-zencrc
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1
-
Predicate type:
https://docs.pypi.org/attestations/publish/v1
-
Subject name:
zencrc-0.9.10.tar.gz
-
Subject digest:
ba42131803f0346739d60fdcd67149ec1eef0aa02f3bc6fd40297f8018899da3
- Sigstore transparency entry: 199908275
- Sigstore integration time:
-
Permalink:
kazuma-desu/python-zencrc@4f236f611060d793445fd05ee96ac1447fe2bcdc
-
Branch / Tag:
refs/tags/v0.9.10
- Owner: https://github.com/kazuma-desu
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com
-
Runner Environment:
github-hosted
-
Publication workflow:
publish.yaml@4f236f611060d793445fd05ee96ac1447fe2bcdc
-
Trigger Event:
push
-
Statement type:
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
Algorithm | Hash digest | |
---|---|---|
SHA256 |
ebeebe56fb93e90ce7a8fc1d7e3981ff1c0e42c5d5015fbf69156d85f77010e5
|
|
MD5 |
12ea3de7204b61bb9964e4424785bf4a
|
|
BLAKE2b-256 |
8cdd80e8b71d2ee0047ab02950d752dd85155bc4def08ffe8f0f16e66faec984
|
Provenance
The following attestation bundles were made for zencrc-0.9.10-py3-none-any.whl
:
Publisher:
publish.yaml
on kazuma-desu/python-zencrc
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1
-
Predicate type:
https://docs.pypi.org/attestations/publish/v1
-
Subject name:
zencrc-0.9.10-py3-none-any.whl
-
Subject digest:
ebeebe56fb93e90ce7a8fc1d7e3981ff1c0e42c5d5015fbf69156d85f77010e5
- Sigstore transparency entry: 199908276
- Sigstore integration time:
-
Permalink:
kazuma-desu/python-zencrc@4f236f611060d793445fd05ee96ac1447fe2bcdc
-
Branch / Tag:
refs/tags/v0.9.10
- Owner: https://github.com/kazuma-desu
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com
-
Runner Environment:
github-hosted
-
Publication workflow:
publish.yaml@4f236f611060d793445fd05ee96ac1447fe2bcdc
-
Trigger Event:
push
-
Statement type: