Skip to main content

Simple hashing script for files.

Project description

file-hash

file-hash

file-hash is a simple command line hashing utility written in Python.

Requirements

  • Python 3.7+
  • Jinja2 2.10+

You should able to use this with Python < 3.7 if you have dataclass back port.

Usage

Create a hash

file_hash hash file.txt

Validate a hash

file_hash validate file.txt

Options

usage: file_hash [-h] [-a <algorithm>] [-d] [-r] [-s] [-p <path>]
              [-P [<prefix> [<prefix> ...]]] [-S [<suffix> [<suffix> ...]]]
              [-R <regex>] [-K <size>] [-J <size>]
              <command> <path>

Simple hashing script for files.

positional arguments:
  <command>             hash or validate
  <path>                Starting path

optional arguments:
  -h, --help            show this help message and exit
  -a <algorithm>, --algorithm <algorithm>
                        Algorithm to calculate hash. (Default: md5)
  -d, --dry-run         Enable dry run to check what file will be generated.
  -r, --recursive       Go through directories recursively. Use carefully with -s
  -s, --symlink         Follow symlink. Use carefully with -r
  -p <path>, --report <path>
                        Generate a HTML report.
  -P [<prefix> [<prefix> ...]], --ignore-prefix [<prefix> [<prefix> ...]]
                        Ignore files and directories that start with those prefix. (Default: ["."])
  -S [<suffix> [<suffix> ...]], --ignore-suffix [<suffix> [<suffix> ...]]
                        Ignore files and directories that end with those suffix. (Default: all hashing algorithm)
  -R <regex>, --regex <regex>
                        Only hash the files that match the regular expression. (Default: None)
  -K <size>, --min-size <size>
                        Minimum file size to be hashed. Default unit is Byte.
                        Support KB, GB, TB, PB. e.g. 1KB (Default: None)
  -J <size>, --max-size <size>
                        Maximum file size to be hashed. Default unit is Byte.
                        Support KB, GB, TB, PB. e.g. 1KB (Default: None)

Note than algorithm and dry-run does not work on validate.

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

file_hash-1.0.1.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

file_hash-1.0.1-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file file_hash-1.0.1.tar.gz.

File metadata

  • Download URL: file_hash-1.0.1.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

File hashes

Hashes for file_hash-1.0.1.tar.gz
Algorithm Hash digest
SHA256 224abf757e6f07786a8c0644669588344c47efa7353182353634e2c0156a8c5f
MD5 65c6b1693ecdf7cd6012c4b7239e7081
BLAKE2b-256 c498a09132ff452c475512743f507fe279eaaf77defbe9c2289e14ba4ce7f6ad

See more details on using hashes here.

File details

Details for the file file_hash-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: file_hash-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

File hashes

Hashes for file_hash-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 01d52e617ecc75351682d847c72bc3fdd026b5206850a11263777a12440afd90
MD5 5ad596a2eb5819d40cad983952262323
BLAKE2b-256 d2f1ce05378e413ac442ff22afe6a6fedd7f627ef2a06a778474545117254e53

See more details on using hashes here.

Supported by

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