{ "info": { "author": "Will Henderson", "author_email": "whenderson.github@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3 :: Only", "Topic :: Database", "Topic :: System :: Filesystems", "Topic :: Utilities" ], "description": "======\nHashDb\n======\nCommand-line utility to quickly scan and compare files/folders, primarily based off of contents.\nComparison results can be fed to a commandline using parameter substitution.\n\nThis utility provides a convenient way to find/remove/move duplicate files in a fast and efficient manner.\nFile meta data, including hash, can be cached on disk, allowing for quick repeated comparisons.\n\n.. image:: https://travis-ci.org/WHenderson/HashDb.svg?branch=master\n :target: https://travis-ci.org/WHenderson/HashDb\n\nInstallation\n============\n::\n\n pip install hashdb2\n\nCommand Line\n============\n::\n\n HashDb2\n\n Usage:\n hashdb2 -h | --help\n hashdb2 --version\n hashdb2 hash [-f|-q|-n] DATABASE -- INPUTS...\n hashdb2 comp [-f|-q|-n] [-steb0cid] ((--lhs-db LHSDB [(--lhs-path LHSPATH [--lhs-update])]) | --lhs-path LHSPATH) [(--rhs-db RHSDB ([--rhs-path RHSPATH [--rhs-update]])) | --rhs-path RHSPATH] -- COMMAND...\n\n Options:\n hash Create/Update DATABASE with INPUTS\n comp Compare inputs, executing COMMAND for each result according to the special arguments provided to COMMAND\n\n -f, --full Generate/Compare complete hash\n -q, --quick Generate/Compare quick hash\n -n, --none Do not generate/compare hashes [default]\n\n -s, --size Compare using size\n -t, --time Compare using modification time\n\n -e, --extension Compare using file extension\n -b, --basename Compare using basename\n\n -0, --skip-empty Skip empty files\n\n -c, --echo Echo command before execution\n -i, --ignore-errors Ignore errors when executing command\n -d, --dry-run Echo command but do not run it\n\n --lhs-db LHSDB Left database input\n --lhs-update Update left database as required\n --lhs-path LHSPATH Left sub-path\n\n --rhs-db RHSDB Right database input\n --rhs-update Update right database as required\n --rhs-path RHSPATH Right sub-path\n\n DATABASE Name of the database to create/update\n INPUTS List files/folders to add to DATABASE\n COMMAND Command which is executed according to matched groups\n The following values within command have special meaning:\n\n {LHS}\n {LHS} {RHS}\n {LHS} {RHSGROUP}\n {LHSGROUP}\n {LHSGROUP} {RHS}\n {LHSGROUP} {RHSGROUP}\n {LHSONLY}\n {LHSONLYGROUP}\n {RHS}\n {RHSGROUP}\n {RHSONLY}\n {RHSONLYGROUP}\n {DUPE}\n {DUPEGROUP}\n {UNIQUE}\n {UNIQUEGROUP}\n\n LHS and RHS specifies the input\n The GROUP suffix combines items into a list\n The ONLY suffix finds elements which have no match\n\n Use DUPE to get inputs which have duplicates (not valid with rhs)\n Use UNIQUE to get inputs which are unique (not valid with rhs)\n\nExamples\n========\n\nFind and remove duplicates\n--------------------------\n::\n\n hashdb2 comp --lhs-path /my-files -- rm {DUPE}\n\nCompare two folders and remove duplicates from one of them\n----------------------------------------------------------\n::\n\n hashdb2 comp --lhs-path /keep-these-files --rhs-path /remove-duplicates -- rm {RHS}\n\nCopy missing files\n------------------\n::\n\n hashdb2 comp --lhs-path /backup --rhs-path /sdcard -- cp {RHSONLY} /backup/", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/WHenderson/HashDb", "keywords": "file matching comparison same identical duplicate duplicates", "license": "Apache 2.0", "maintainer": null, "maintainer_email": null, "name": "hashdb2", "package_url": "https://pypi.org/project/hashdb2/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/hashdb2/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/WHenderson/HashDb" }, "release_url": "https://pypi.org/project/hashdb2/1.0/", "requires_dist": null, "requires_python": null, "summary": "HashDb2 provides a simple method for executing commands based on matched files", "version": "1.0" }, "last_serial": 2857083, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "5fd43aca0aa29b88b3b39462625b1b1f", "sha256": "a0dbbd6e09b20496d7b185349a111f9577b85c3548f9271f1423cd0cb68fa77e" }, "downloads": -1, "filename": "hashdb2-0.1.zip", "has_sig": false, "md5_digest": "5fd43aca0aa29b88b3b39462625b1b1f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2200, "upload_time": "2017-01-08T11:48:26", "url": "https://files.pythonhosted.org/packages/c7/c4/5f62091f6c2425b18d84f892ae7bacfdedd4b9265d6bf371154c54790679/hashdb2-0.1.zip" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "cc1a8869d96087c5b3bd4b6309b2d7b5", "sha256": "29d5abecfc0fa5894ca28aa79d937b31fcc4239049f4803a060bf790d6e524d3" }, "downloads": -1, "filename": "hashdb2-0.2.zip", "has_sig": false, "md5_digest": "cc1a8869d96087c5b3bd4b6309b2d7b5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2200, "upload_time": "2017-01-08T11:53:57", "url": "https://files.pythonhosted.org/packages/c6/6b/28b4e0ae8a813c240419a79596f57ab2ccf698210a0fb8e80e7b48a1ab7d/hashdb2-0.2.zip" } ], "1.0": [ { "comment_text": "", "digests": { "md5": "39c0d8a0832d59ab98359a171ef956b8", "sha256": "159fe2029842cc283330d3cd7ae0b0d7e76c9c4dd5021ab7492b5de230161190" }, "downloads": -1, "filename": "hashdb2-1.0.zip", "has_sig": false, "md5_digest": "39c0d8a0832d59ab98359a171ef956b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16546, "upload_time": "2017-05-07T13:31:32", "url": "https://files.pythonhosted.org/packages/b9/81/8b410127a0e1d1e0d5e73958fc7086febff63699f220217be503fd8614ac/hashdb2-1.0.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "39c0d8a0832d59ab98359a171ef956b8", "sha256": "159fe2029842cc283330d3cd7ae0b0d7e76c9c4dd5021ab7492b5de230161190" }, "downloads": -1, "filename": "hashdb2-1.0.zip", "has_sig": false, "md5_digest": "39c0d8a0832d59ab98359a171ef956b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16546, "upload_time": "2017-05-07T13:31:32", "url": "https://files.pythonhosted.org/packages/b9/81/8b410127a0e1d1e0d5e73958fc7086febff63699f220217be503fd8614ac/hashdb2-1.0.zip" } ] }