我如何配置我的python包复制文件到脚本的子文件夹后安装



我有一个python包,里面有各种其他语言的脚本。Setuptools已经支持将这些脚本复制到环境的scripts目录中,以便从命令行访问它们。为此,我可以简单地在setup命令中使用以下关键字:

setup(
...
scripts=["bin/script1.bat", "bin/script2.bat"],
...
)

安装包后,脚本文件将正确地结束在环境的scripts文件夹中。

我的问题:是否有办法让这些文件在scripts目录的子文件夹结束?比如scripts/odd_scripts/script1.batscripts/even_scripts/script2.bat

由于它们不是Python脚本,因此您不需要scripts的主要特性(即:重写shebang以指向与用于安装包的Python运行时相同的可执行文件)。

在这种情况下,您可以将它们打包为data_files,原始的可执行位和shebangs将被保留:

from setuptools import setup
setup(
...
data_files=[('bin/odd_scripts', ['bin/script1.bat']),
('bin/even_scripts', ['bin/script2.bat'])],
...
)

相关内容

  • 没有找到相关文章

最新更新