You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在pyproject.toml中指定命令行脚本?(cutlet项目适配pipx)

配置pyproject.toml支持命令行脚本(无需Poetry)

你完全不用依赖Poetry,直接用PEP 621标准配置或者setuptools的扩展就能搞定命令行脚本的指定,完美适配pipx工具。下面分两种场景给你具体方案:

场景1:用模块入口点(推荐方式)

如果你的命令行逻辑已经封装在某个模块的函数里(比如cutlet/cli.py里的main()函数),可以直接在pyproject.toml的[project.scripts]区块配置——这是PEP 621的标准写法,所有符合规范的打包工具(包括pipx依赖的pip)都能识别:

[project]
name = "cutlet"
version = "你的项目版本号"
# 这里补充其他必要项目信息,比如authors、description等

[project.scripts]
cutlet = "cutlet.cli:main"
  • 左边的cutlet是你要在终端调用的命令名称
  • 右边的字符串遵循模块路径:函数名格式,指向你脚本的入口函数

场景2:直接指定已有的独立脚本文件

如果你不想调整代码结构,只想复用已有的独立脚本文件(比如项目里的scripts/cutlet.py),可以用setuptools的扩展配置[tool.setuptools.scripts],对应原来setup.py里的scripts参数:

[project]
name = "cutlet"
version = "你的项目版本号"

[tool.setuptools.scripts]
cutlet = "scripts/cutlet.py"

验证配置是否生效

配置完成后,在项目根目录运行以下命令安装:

pipx install .

安装成功后,直接在终端输入cutlet就能调用你的命令行脚本了,pipx会自动把命令加入系统可执行路径。

内容的提问来源于stack exchange,提问作者polm23

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 18:32:55