pyutilscripts


Namepyutilscripts JSON
Version 0.5.0b0 PyPI version JSON
download
home_pageNone
SummaryPyUtilScripts 是一个基于 Python 的通用小工具集合,目标是提供编写通用任务的辅助工具。
upload_time2025-08-28 01:59:27
maintainerNone
docs_urlNone
authorNone
requires_python>=3.7
licenseMIT License
keywords tools
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # **PyUtilScripts**  

`PyUtilScripts` 是一个基于 Python 的通用小工具集合,目标是提供编写通用任务的辅助工具。  

## 📦 安装

### 通过 pip 安装

```bash
pip install pyutilscripts
```

### 从源码安装

```bash
git clone https://github.com/ZeroKwok/PyUtilScripts.git
cd PyUtilScripts
pip install .
```

---

## 📝 使用说明

- **fcopy**
  - 基于清单文件的复制工具
  - 特点
    - 支持 更新、覆盖写、重命名模式
    - 支持 交互模式,精准把控拷贝细节(拷贝前生成行动列表,在用户编辑或确认后,才具体执行行动列表中记录的动作)
    - 支持 过滤模式,忽略某些文件或目录
  - 示例:
    - 按文件清单拷贝指定目录下的文件
      - 更新模式 `fcopy -l /path/to/list.txt -s /path/to/src -t /path/to/dest`
      - 覆盖模式 `fcopy -l /path/to/list.txt -s /path/to/src -t /path/to/dest -m o`
      - 重命名模式 `fcopy -l /path/to/list.txt -s /path/to/src -t /path/to/dest -m r`
    - 通过指定目录下的文件生成文件清单
      - `fcopy -l /path/to/list.txt -s /path/to/src --update-list`
    - 交互模式下拷贝指定目录的文件
      - `fcopy -l /path/to/list.txt -s /path/to/src -t /path/to/dest -i`
  - 概念
    - 文件清单(fcopy.list)决定要拷贝的文件
    - 行动清单决定拷贝行为(交互模式下通过编辑器呈现)

- **prunedirs**
  - 递归删除空目录
  - 示例:
    - `prunedirs /path/to/dir`

- **forward.tcp**
  - TCP 端口转发工具
  - 示例:
    - `forward.tcp -s 0.0.0.0:8081 -d 127.0.0.1:1081`

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "pyutilscripts",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "tools",
    "author": null,
    "author_email": "Zero Kwok <zero.kwok@foxmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/46/cd/7c5035cf285ccccf1455930d948a51a71298c77d111ecd3542a74e959fff/pyutilscripts-0.5.0b0.tar.gz",
    "platform": null,
    "description": "# **PyUtilScripts**  \n\n`PyUtilScripts` \u662f\u4e00\u4e2a\u57fa\u4e8e Python \u7684\u901a\u7528\u5c0f\u5de5\u5177\u96c6\u5408\uff0c\u76ee\u6807\u662f\u63d0\u4f9b\u7f16\u5199\u901a\u7528\u4efb\u52a1\u7684\u8f85\u52a9\u5de5\u5177\u3002  \n\n## \ud83d\udce6 \u5b89\u88c5\n\n### \u901a\u8fc7 pip \u5b89\u88c5\n\n```bash\npip install pyutilscripts\n```\n\n### \u4ece\u6e90\u7801\u5b89\u88c5\n\n```bash\ngit clone https://github.com/ZeroKwok/PyUtilScripts.git\ncd PyUtilScripts\npip install .\n```\n\n---\n\n## \ud83d\udcdd \u4f7f\u7528\u8bf4\u660e\n\n- **fcopy**\n  - \u57fa\u4e8e\u6e05\u5355\u6587\u4ef6\u7684\u590d\u5236\u5de5\u5177\n  - \u7279\u70b9\n    - \u652f\u6301 \u66f4\u65b0\u3001\u8986\u76d6\u5199\u3001\u91cd\u547d\u540d\u6a21\u5f0f\n    - \u652f\u6301 \u4ea4\u4e92\u6a21\u5f0f\uff0c\u7cbe\u51c6\u628a\u63a7\u62f7\u8d1d\u7ec6\u8282\uff08\u62f7\u8d1d\u524d\u751f\u6210\u884c\u52a8\u5217\u8868\uff0c\u5728\u7528\u6237\u7f16\u8f91\u6216\u786e\u8ba4\u540e\uff0c\u624d\u5177\u4f53\u6267\u884c\u884c\u52a8\u5217\u8868\u4e2d\u8bb0\u5f55\u7684\u52a8\u4f5c\uff09\n    - \u652f\u6301 \u8fc7\u6ee4\u6a21\u5f0f\uff0c\u5ffd\u7565\u67d0\u4e9b\u6587\u4ef6\u6216\u76ee\u5f55\n  - \u793a\u4f8b\uff1a\n    - \u6309\u6587\u4ef6\u6e05\u5355\u62f7\u8d1d\u6307\u5b9a\u76ee\u5f55\u4e0b\u7684\u6587\u4ef6\n      - \u66f4\u65b0\u6a21\u5f0f `fcopy -l /path/to/list.txt -s /path/to/src -t /path/to/dest`\n      - \u8986\u76d6\u6a21\u5f0f `fcopy -l /path/to/list.txt -s /path/to/src -t /path/to/dest -m o`\n      - \u91cd\u547d\u540d\u6a21\u5f0f `fcopy -l /path/to/list.txt -s /path/to/src -t /path/to/dest -m r`\n    - \u901a\u8fc7\u6307\u5b9a\u76ee\u5f55\u4e0b\u7684\u6587\u4ef6\u751f\u6210\u6587\u4ef6\u6e05\u5355\n      - `fcopy -l /path/to/list.txt -s /path/to/src --update-list`\n    - \u4ea4\u4e92\u6a21\u5f0f\u4e0b\u62f7\u8d1d\u6307\u5b9a\u76ee\u5f55\u7684\u6587\u4ef6\n      - `fcopy -l /path/to/list.txt -s /path/to/src -t /path/to/dest -i`\n  - \u6982\u5ff5\n    - \u6587\u4ef6\u6e05\u5355(fcopy.list)\u51b3\u5b9a\u8981\u62f7\u8d1d\u7684\u6587\u4ef6\n    - \u884c\u52a8\u6e05\u5355\u51b3\u5b9a\u62f7\u8d1d\u884c\u4e3a(\u4ea4\u4e92\u6a21\u5f0f\u4e0b\u901a\u8fc7\u7f16\u8f91\u5668\u5448\u73b0)\n\n- **prunedirs**\n  - \u9012\u5f52\u5220\u9664\u7a7a\u76ee\u5f55\n  - \u793a\u4f8b\uff1a\n    - `prunedirs /path/to/dir`\n\n- **forward.tcp**\n  - TCP \u7aef\u53e3\u8f6c\u53d1\u5de5\u5177\n  - \u793a\u4f8b\uff1a\n    - `forward.tcp -s 0.0.0.0:8081 -d 127.0.0.1:1081`\n",
    "bugtrack_url": null,
    "license": "MIT License",
    "summary": "PyUtilScripts \u662f\u4e00\u4e2a\u57fa\u4e8e Python \u7684\u901a\u7528\u5c0f\u5de5\u5177\u96c6\u5408\uff0c\u76ee\u6807\u662f\u63d0\u4f9b\u7f16\u5199\u901a\u7528\u4efb\u52a1\u7684\u8f85\u52a9\u5de5\u5177\u3002",
    "version": "0.5.0b0",
    "project_urls": {
        "Homepage": "https://github.com/ZeroKwok/pyutilscripts",
        "Issues": "https://github.com/ZeroKwok/pyutilscripts/issues"
    },
    "split_keywords": [
        "tools"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "004d0732d84b2ee9fe972f60aba4e669dab7e4041ba05053411a7ae38701307b",
                "md5": "432622ff4695bd9ee861215ff3de16a2",
                "sha256": "acc2396fdc137819d45b497eb27d7ef8b15043a0b2c6c9c4a498c0e2b715c6ac"
            },
            "downloads": -1,
            "filename": "pyutilscripts-0.5.0b0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "432622ff4695bd9ee861215ff3de16a2",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 13956,
            "upload_time": "2025-08-28T01:59:26",
            "upload_time_iso_8601": "2025-08-28T01:59:26.377727Z",
            "url": "https://files.pythonhosted.org/packages/00/4d/0732d84b2ee9fe972f60aba4e669dab7e4041ba05053411a7ae38701307b/pyutilscripts-0.5.0b0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "46cd7c5035cf285ccccf1455930d948a51a71298c77d111ecd3542a74e959fff",
                "md5": "3d13b7bd7ec16893b34a1b7769c71799",
                "sha256": "1437d7f05f5ce34e2ed80453aca6e85debf51ec28f5a3ad24f3add30bc0921b4"
            },
            "downloads": -1,
            "filename": "pyutilscripts-0.5.0b0.tar.gz",
            "has_sig": false,
            "md5_digest": "3d13b7bd7ec16893b34a1b7769c71799",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 14859,
            "upload_time": "2025-08-28T01:59:27",
            "upload_time_iso_8601": "2025-08-28T01:59:27.651196Z",
            "url": "https://files.pythonhosted.org/packages/46/cd/7c5035cf285ccccf1455930d948a51a71298c77d111ecd3542a74e959fff/pyutilscripts-0.5.0b0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-28 01:59:27",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ZeroKwok",
    "github_project": "pyutilscripts",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pyutilscripts"
}
        
Elapsed time: 1.94692s