{ "info": { "author": "Kirill Plotnikov", "author_email": "init@pltnk.dev", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.7" ], "description": "# Selective Copy v0.3.0\n[![Python Version](https://img.shields.io/pypi/pyversions/slcp.svg)](https://www.python.org/downloads/release/python-370/)\n[![PyPi Version](https://img.shields.io/pypi/v/slcp.svg)](https://pypi.org/project/slcp/)\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/bdde9d33956642129d82d219328ad5cc)](https://www.codacy.com/app/pltnk/selective_copy?utm_source=github.com&utm_medium=referral&utm_content=pltnk/selective_copy&utm_campaign=Badge_Grade)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![License](https://img.shields.io/github/license/pltnk/selective_copy.svg)](https://choosealicense.com/licenses/mit/)\n\nSimple command line application that copies all files with given extensions from a directory and its subfolders to another directory showing progress bar and remaining files counter.\\\nAllows to preserve a source folder structure, to process only files without given extensions, to move files instead of copying, to exclude certain files from processing and to create a log if necessary.\\\nOpens a filedialog if source and/or destination are not given in the command line.\\\nCreates folders in a destination path if they don't exist.\n\n## Installing\n\n```pip install slcp```\n\n## Usage\n\n
\nslcp ext [ext ...] [-s SRC] [-d DST] [-sc | -dc] [-p] [-i] [-m] [-e FILE [FILE ...]] [-l] [-h]\n\nPositional arguments:\next                         One or more extensions of the files to copy. \n                            Enter extensions without a dot and separate by spaces.\n\nOptional arguments:\n-s SRC, --source SRC        Source folder path.\n-d DST, --dest DST          Destination folder path.\n-sc, --srccwd               Use current working directory as a source folder.\n-dc, --dstcwd               Use current working directory as a destination folder.\n-p, --preserve              Preserve source folder structure.\n-i, --invert                Process only files without given extensions.\n-m, --move                  Move files instead of copying, be careful with this option.\n-e FILE [FILE ...],         Exclude one or more files from processing.\n--exclude FILE [FILE ...]   Enter filenames with extensions and separate by spaces.\n-l, --log                   Create and save log to the destination folder.\n-h, --help                  Show this help message and exit.\n
\n\n### Examples\n\n[![asciicast](https://asciinema.org/a/263359.svg)](https://asciinema.org/a/263359?t=2)\n\n## Changelog\n\n### [v0.3.0](https://github.com/pltnk/selective_copy/releases/tag/v0.3.0) - 2019-08-22 \n#### Added\n- [Black](https://github.com/psf/black) code style\n\n#### Changed\n- The code is now divided into separate modules\n- Dots that come with extensions are removed from output folder name. \nThe reason is that folders with a name starting with a dot are considered as hidden on Linux.\n- Log saving indication\n- Name of the logfile\n\n#### Fixed\n- Issue when paths like /home/user/test and /home/user/test2 were considered as nested which lead to an error.\n\n[Compare with v0.2.1](https://github.com/pltnk/selective_copy/compare/v0.2.1...v0.3.0)\n\n### [v0.2.1](https://github.com/pltnk/selective_copy/releases/tag/v0.2.1) - 2019-07-16 \n#### Added\n- Changelog\n\n#### Fixed\n- Readme of the project on [PyPI](https://pypi.org/project/slcp/) and [GitHub](https://github.com/pltnk/selective_copy)\n\n[Compare with v0.2.0](https://github.com/pltnk/selective_copy/compare/v0.2.0...v0.2.1)\n\n### [v0.2.0](https://github.com/pltnk/selective_copy/releases/tag/v0.2.0) - 2019-07-15 \n#### Added\n- Support of processing several extensions at once\n- --invert option\n- --move option\n- --exclude option\n\n[Compare with v0.1.0](https://github.com/pltnk/selective_copy/compare/v0.1.0...v0.2.0)\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details\n\n## Acknowledgments\n\nInspired by the task from [Chapter 9 of Automate the Boring Stuff](https://automatetheboringstuff.com/chapter9/).\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/pltnk/selective_copy", "keywords": "cli,copy,selective copy,slcp", "license": "MIT", "maintainer": "Kirill Plotnikov", "maintainer_email": "init@pltnk.dev", "name": "slcp", "package_url": "https://pypi.org/project/slcp/", "platform": "", "project_url": "https://pypi.org/project/slcp/", "project_urls": { "Homepage": "https://github.com/pltnk/selective_copy", "Repository": "https://github.com/pltnk/selective_copy" }, "release_url": "https://pypi.org/project/slcp/0.3.0/", "requires_dist": null, "requires_python": ">=3.7,<4.0", "summary": "Copy all files with given extensions from a directory and its subfolders to another directory.", "version": "0.3.0" }, "last_serial": 5714544, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "a43b596ac1eebb86aee42f6b0bf0056b", "sha256": "3e6d625712929df1891bfbc874ff2ec9a29dfae8da92f65c111244802c261f3d" }, "downloads": -1, "filename": "slcp-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a43b596ac1eebb86aee42f6b0bf0056b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 5426, "upload_time": "2019-06-25T11:45:17", "url": "https://files.pythonhosted.org/packages/c5/18/946fdb196b2628677e9ae80a23cb69abe147556a220970c021d966190f5e/slcp-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "68d905f8cad38fe69c0c83d2eea85a82", "sha256": "e2ebfd87c3c9e11cd236207a28623c7641feabdea520027982bd32158ec6a642" }, "downloads": -1, "filename": "slcp-0.1.0.tar.gz", "has_sig": false, "md5_digest": "68d905f8cad38fe69c0c83d2eea85a82", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 4872, "upload_time": "2019-06-25T11:45:19", "url": "https://files.pythonhosted.org/packages/75/81/496f3d542415f7ad1273fa5f3afd9ea7ba5b3bd8d6d7decc9cab459af919/slcp-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "59d16a0edd26c17b7ba962fe210d6773", "sha256": "098f64932dc26db23ae5e537dbca6063ef3da66806214258d58be2f1f542acd7" }, "downloads": -1, "filename": "slcp-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "59d16a0edd26c17b7ba962fe210d6773", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 6279, "upload_time": "2019-07-15T12:45:13", "url": "https://files.pythonhosted.org/packages/8c/9d/66f74f3e340622a5b6ff3afbe92922c6c63b7afecf27b371cfd55e8a3af6/slcp-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ea1739690bb785b1121907143397c167", "sha256": "b92eab4f364822cc71c52941ba39329b2c537f9ede91a51987691e5197e0881c" }, "downloads": -1, "filename": "slcp-0.2.0.tar.gz", "has_sig": false, "md5_digest": "ea1739690bb785b1121907143397c167", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 5781, "upload_time": "2019-07-15T12:45:15", "url": "https://files.pythonhosted.org/packages/32/08/7bb06a4fb3cd3767a21c42771947db8d7ecd10083e3097004766c91fa42b/slcp-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "e3f80bbe1064748b45763e70668466f8", "sha256": "983de9d1d146225a13b9480630ae7fadeccda2eb999e13eefe9f109c2e47be9b" }, "downloads": -1, "filename": "slcp-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e3f80bbe1064748b45763e70668466f8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 6423, "upload_time": "2019-07-16T12:45:07", "url": "https://files.pythonhosted.org/packages/3b/a1/24a5e1247c0338197a5cefa8a50ce0342e088c5bc2edf9a565c15cc9005b/slcp-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5ac4fbbc73fabe578fbb7375516ad061", "sha256": "f7ffff6500fb53f5e38196d26ef5038552bc32f65240553538425c03129a3286" }, "downloads": -1, "filename": "slcp-0.2.1.tar.gz", "has_sig": false, "md5_digest": "5ac4fbbc73fabe578fbb7375516ad061", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 5984, "upload_time": "2019-07-16T12:45:09", "url": "https://files.pythonhosted.org/packages/88/8d/d6bd9d80145edc66e5bbbf55cb96b21d876ae5131fd02d3f43805f191e5b/slcp-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "795ddd448180ea5b9d352bea3cae05d6", "sha256": "e980b1db94c2a7eb8a2f8fa1dcf2cd9630abd1dbb12b0754274264016e335077" }, "downloads": -1, "filename": "slcp-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "795ddd448180ea5b9d352bea3cae05d6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 8589, "upload_time": "2019-08-22T10:59:53", "url": "https://files.pythonhosted.org/packages/f9/a3/3d74cae1120284a47d47398d3598b850ae7c101e3a0efb4332dfde4a39b6/slcp-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9eeb3ec6ea265692350ace40afe953e0", "sha256": "5215788e6fbd8cf34906538746fd35bf56a3bc1fc2ab92560c55db54f70efca5" }, "downloads": -1, "filename": "slcp-0.3.0.tar.gz", "has_sig": false, "md5_digest": "9eeb3ec6ea265692350ace40afe953e0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 6850, "upload_time": "2019-08-22T10:59:54", "url": "https://files.pythonhosted.org/packages/17/5b/4660dc293789852a633334b80d5a15a856c742f47f72fab8389e5a38ff95/slcp-0.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "795ddd448180ea5b9d352bea3cae05d6", "sha256": "e980b1db94c2a7eb8a2f8fa1dcf2cd9630abd1dbb12b0754274264016e335077" }, "downloads": -1, "filename": "slcp-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "795ddd448180ea5b9d352bea3cae05d6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 8589, "upload_time": "2019-08-22T10:59:53", "url": "https://files.pythonhosted.org/packages/f9/a3/3d74cae1120284a47d47398d3598b850ae7c101e3a0efb4332dfde4a39b6/slcp-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9eeb3ec6ea265692350ace40afe953e0", "sha256": "5215788e6fbd8cf34906538746fd35bf56a3bc1fc2ab92560c55db54f70efca5" }, "downloads": -1, "filename": "slcp-0.3.0.tar.gz", "has_sig": false, "md5_digest": "9eeb3ec6ea265692350ace40afe953e0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 6850, "upload_time": "2019-08-22T10:59:54", "url": "https://files.pythonhosted.org/packages/17/5b/4660dc293789852a633334b80d5a15a856c742f47f72fab8389e5a38ff95/slcp-0.3.0.tar.gz" } ] }