hashreport is a command-line tool that generates comprehensive hash reports for files within a directory. The reports can be output in CSV or JSON formats and include detailed information such as the file name, path, size, hash algorithm, hash value, and last modified date. Designed for speed and efficiency, hashreport can handle large volumes of files and offers filtering options to include or exclude files based on size, type, or name patterns.
- Bulk hash generation for large directories
- Support for multiple hash algorithms using hashlib
- Multi-threaded processing for faster performance
- Test run mode to process a subset of files
- Output reports in CSV and JSON formats
- Filter files by size, type, and name patterns
- Option to provide a file list for inclusion or exclusion
- Recursive directory traversal to process nested folders
- Email report upon completion using SMTP
Clone the repository to your local machine using Git and navigate to the project directory:
git clone https://github.com/madebyjake/hashreport.git && cd hashreport
Alternatively, you can download the repository as a ZIP file and extract it to a folder on your machine.
First we'll install Poetry, a Python packaging and dependency management tool. There are a few ways to do this, but the recommended method is to use the installer script:
curl -sSL https://install.python-poetry.org | python3 -
Next, install the project dependencies using Poetry:
poetry install
You can now run the application using Poetry:
poetry run hashreport --help
This project is licensed under the Affero General Public License v3.0 - see the LICENSE file for details.
Please report any issues or feedback on the GitHub Issues page.