{ "info": { "author": "Beno\u00eet Legat", "author_email": "benoit.legat@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Topic :: Utilities" ], "description": ".. -*- coding: utf-8 -*-\n\nSmart copy\n==========\n\nThis is an useful utility for automating copy from source and destination\nthat can be customised by arguments that may vary.\nA good example of usage is available with\n`this repo `_.\n\nInstall\n-------\n\nYou can install it from source by cloning this repo\n\n.. code-block:: bash\n\n git clone https://github.com/blegat/smartcp.git\n\nand running\n\n.. code-block:: bash\n\n sudo python setup.py install\n\nYou can also install the latest released version through ``pip``\n\n.. code-block:: bash\n\n sudo pip install smartcp\n\nor ``easy_install``\n\n.. code-block:: bash\n\n sudo easy_install smartcp\n\nRequirements\n~~~~~~~~~~~~\n\nIt is officially only compatible with Python 3 and Python 2\nbut has some issues with accents for Python 2\n(Python 3 has a better unicode approach than Python 2).\n\nYou will also need ``PyYAML``.\n\nUsage\n-----\n\nYou can get help by running\n\n.. code-block:: bash\n\n smartcp -h\n\nConfig file\n~~~~~~~~~~~\n\nTo specify which files to copy where, you need to specify a config file.\nIt should use the `YAML syntax `_.\nIt contains a base path for the source,\na base path for the destination and clients.\nFor each client,\nyou can specify some arguments\n(if no argument is given, there will be one copy but there can't be any node\n``arg``) and how to generate\nthe source and destination from these arguments.\nTo specify them you need to nest three types of nodes.\n\n* A ``path_format`` which can contain placeholders ``{n}``\n and then parameters to replace them.\n The parameters can be one of the three nodes.\n* A ``mapping`` which contain a hash and a key which is a node.\n* An ``arg`` which is one of the arguments.\n\nHere is an example which copies files from ``version/subversion/file``\nto ``file-version.subversion`` while renaming ``file`` to ``b`` if it is ``a``.\nIt also copies ``1/1/x`` to ``../x-1.1``.\n\n.. code-block:: yaml\n\n input_base: .\n output_base: .\n clients:\n - name: Official\n arguments:\n subversion: [1, 2, 3]\n version: [1, 2, 3, 4, 5]\n file: [a, A, x, X]\n input:\n path_format: \"{0}/{1}/{2}\"\n parameters:\n - arg: subversion\n - arg: version\n - arg: file\n output:\n path_format: \"{0}-{1}.{2}\"\n parameters:\n - mapping:\n a: b\n key:\n arg: file\n - arg: version\n - arg: subversion\n - name: Simple copy\n input:\n path_format: 1/1/x\n output:\n path_format: ../x-1.1\n\nNote the ``\"`` for the path format because without it YAML won't understand\nthat it is just a string.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://www.github.com/blegat/smartcp", "keywords": null, "license": "GPLv3+", "maintainer": null, "maintainer_email": null, "name": "smartcp", "package_url": "https://pypi.org/project/smartcp/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/smartcp/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://www.github.com/blegat/smartcp" }, "release_url": "https://pypi.org/project/smartcp/0.2/", "requires_dist": null, "requires_python": null, "summary": "Smart Copy Utility", "version": "0.2" }, "last_serial": 1410840, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "e630000fe4707517e5ffe2ad1dc290a2", "sha256": "254086effab3ff69df9fc42329d3a9bf6cc175ebd18a1034a0f30d05a3df762a" }, "downloads": -1, "filename": "smartcp-0.1-py2.7.egg", "has_sig": false, "md5_digest": "e630000fe4707517e5ffe2ad1dc290a2", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 10043, "upload_time": "2013-07-20T16:02:34", "url": "https://files.pythonhosted.org/packages/ef/25/138b60affb53e5840fa106f2de0bdf0877456b70fadcf5fdc71cc7217a6b/smartcp-0.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "d98b21f2d37bb6e7dbc08b4b045f4450", "sha256": "e2b282e42b6951c1c0ee6e9a91d24ac110052bcfbb1cb4701360bcefa13b4264" }, "downloads": -1, "filename": "smartcp-0.1-py3.3.egg", "has_sig": false, "md5_digest": "d98b21f2d37bb6e7dbc08b4b045f4450", "packagetype": "bdist_egg", "python_version": "3.3", "requires_python": null, "size": 10329, "upload_time": "2013-07-20T16:03:18", "url": "https://files.pythonhosted.org/packages/c7/88/d85cc9a0743723a5f37467e17f9e3ed746ec71986cdddff3853b94612666/smartcp-0.1-py3.3.egg" }, { "comment_text": "", "digests": { "md5": "d35856ac1f2af46320c7d37a1713f2be", "sha256": "52e7430709b2d3505deec0257363c5e4c4ed08677210845cb7462d4c51f93917" }, "downloads": -1, "filename": "smartcp-0.1-py3.4.egg", "has_sig": false, "md5_digest": "d35856ac1f2af46320c7d37a1713f2be", "packagetype": "bdist_egg", "python_version": "3.4", "requires_python": null, "size": 10206, "upload_time": "2014-05-18T10:30:52", "url": "https://files.pythonhosted.org/packages/05/87/1c1a6f6157af1c5af9278b81405a79d9b3ce3cec00dda66d7e4df9b9a3f9/smartcp-0.1-py3.4.egg" }, { "comment_text": "", "digests": { "md5": "4b0560e64cfe1e80982be5ecf245cd29", "sha256": "83a8de276c665a92d62e6478a74e9b9418a2a705befdd19c22fbd8c0eb2907a1" }, "downloads": -1, "filename": "smartcp-0.1.tar.gz", "has_sig": false, "md5_digest": "4b0560e64cfe1e80982be5ecf245cd29", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7539, "upload_time": "2013-07-20T16:02:45", "url": "https://files.pythonhosted.org/packages/32/eb/596ddd410f970bddc8de30af7a0d95774fdcb8138f0d1274fb15bf63906d/smartcp-0.1.tar.gz" } ], "0.2": [ { "comment_text": "built for Linux-3.13.0-44-generic-x86_64-with-glibc2.9", "digests": { "md5": "7f18cfab22e9f8c075f7919545d7641e", "sha256": "0b14fa565828eb2609336dc2edeecf546d38f86fa3205475b51655373ef6d2d5" }, "downloads": -1, "filename": "smartcp-0.2.linux-x86_64.tar.gz", "has_sig": false, "md5_digest": "7f18cfab22e9f8c075f7919545d7641e", "packagetype": "bdist_dumb", "python_version": "any", "requires_python": null, "size": 8931, "upload_time": "2015-02-05T14:17:51", "url": "https://files.pythonhosted.org/packages/a6/f0/538e19f661dd4311415f081dc12a87554b417edacc8748009bd2855f1d9f/smartcp-0.2.linux-x86_64.tar.gz" }, { "comment_text": "", "digests": { "md5": "893c362f911b6f894e8e68c97caaf222", "sha256": "a71ff4ede284b2d02d1437e8c3fa7c7c1b2277da84806e172744c9d085ef0814" }, "downloads": -1, "filename": "smartcp-0.2-py2.7.egg", "has_sig": false, "md5_digest": "893c362f911b6f894e8e68c97caaf222", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 10479, "upload_time": "2015-02-05T14:24:50", "url": "https://files.pythonhosted.org/packages/2b/ec/017a47dc8f33dc47901ab10317b874e0eb28024ecef3ad303721da9dc1f6/smartcp-0.2-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "b3164d2f66ed756b54e14071cd572e4e", "sha256": "0b63db8077c6e0762e6e1673e080ddc04189b0a2608a2a63d4b863a5830d62a4" }, "downloads": -1, "filename": "smartcp-0.2-py3.4.egg", "has_sig": false, "md5_digest": "b3164d2f66ed756b54e14071cd572e4e", "packagetype": "bdist_egg", "python_version": "3.4", "requires_python": null, "size": 10621, "upload_time": "2015-02-05T14:24:39", "url": "https://files.pythonhosted.org/packages/66/09/355302a7d6a513de9b27f1ec033d44e6a70be6999a00c33db580e018d8d7/smartcp-0.2-py3.4.egg" }, { "comment_text": "", "digests": { "md5": "46c06af9f14953f94a5fa85e835f3a1e", "sha256": "4c58d18c0dde89d934154cca0a65736632d351755e7085e72c889f4a8fa64228" }, "downloads": -1, "filename": "smartcp-0.2.tar.gz", "has_sig": false, "md5_digest": "46c06af9f14953f94a5fa85e835f3a1e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6018, "upload_time": "2015-02-05T14:17:56", "url": "https://files.pythonhosted.org/packages/d6/e4/c6cf68e057e2d8585a72ec66d1ba73006de2d90800ef473bd9cfcc6e88fd/smartcp-0.2.tar.gz" } ] }, "urls": [ { "comment_text": "built for Linux-3.13.0-44-generic-x86_64-with-glibc2.9", "digests": { "md5": "7f18cfab22e9f8c075f7919545d7641e", "sha256": "0b14fa565828eb2609336dc2edeecf546d38f86fa3205475b51655373ef6d2d5" }, "downloads": -1, "filename": "smartcp-0.2.linux-x86_64.tar.gz", "has_sig": false, "md5_digest": "7f18cfab22e9f8c075f7919545d7641e", "packagetype": "bdist_dumb", "python_version": "any", "requires_python": null, "size": 8931, "upload_time": "2015-02-05T14:17:51", "url": "https://files.pythonhosted.org/packages/a6/f0/538e19f661dd4311415f081dc12a87554b417edacc8748009bd2855f1d9f/smartcp-0.2.linux-x86_64.tar.gz" }, { "comment_text": "", "digests": { "md5": "893c362f911b6f894e8e68c97caaf222", "sha256": "a71ff4ede284b2d02d1437e8c3fa7c7c1b2277da84806e172744c9d085ef0814" }, "downloads": -1, "filename": "smartcp-0.2-py2.7.egg", "has_sig": false, "md5_digest": "893c362f911b6f894e8e68c97caaf222", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 10479, "upload_time": "2015-02-05T14:24:50", "url": "https://files.pythonhosted.org/packages/2b/ec/017a47dc8f33dc47901ab10317b874e0eb28024ecef3ad303721da9dc1f6/smartcp-0.2-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "b3164d2f66ed756b54e14071cd572e4e", "sha256": "0b63db8077c6e0762e6e1673e080ddc04189b0a2608a2a63d4b863a5830d62a4" }, "downloads": -1, "filename": "smartcp-0.2-py3.4.egg", "has_sig": false, "md5_digest": "b3164d2f66ed756b54e14071cd572e4e", "packagetype": "bdist_egg", "python_version": "3.4", "requires_python": null, "size": 10621, "upload_time": "2015-02-05T14:24:39", "url": "https://files.pythonhosted.org/packages/66/09/355302a7d6a513de9b27f1ec033d44e6a70be6999a00c33db580e018d8d7/smartcp-0.2-py3.4.egg" }, { "comment_text": "", "digests": { "md5": "46c06af9f14953f94a5fa85e835f3a1e", "sha256": "4c58d18c0dde89d934154cca0a65736632d351755e7085e72c889f4a8fa64228" }, "downloads": -1, "filename": "smartcp-0.2.tar.gz", "has_sig": false, "md5_digest": "46c06af9f14953f94a5fa85e835f3a1e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6018, "upload_time": "2015-02-05T14:17:56", "url": "https://files.pythonhosted.org/packages/d6/e4/c6cf68e057e2d8585a72ec66d1ba73006de2d90800ef473bd9cfcc6e88fd/smartcp-0.2.tar.gz" } ] }