2014-04-07 13 views
0

我在python中开发了一个命令行实用程序,它有3个模块(为简洁起见:a.py,b.py,c.py)。我想分发给其他用户使用(如果他们愿意)。使用distutils将脚本链接安装到/ usr/local/sbin

我想a.py,b.py & c.py安装到一个目录中(假设下/usr/local/lib/python*.*/)(我的理解是标准的。

命令行由a.py实现 - 因此我也想确保在/ usr/local/sbin /中创建到a.py的链接,以便用户可以访问命令行。

由于@ eric-araujo已通知我,我无法使用distutils来完成此任务,并且我相信他的显而易见的专业知识,因此,我可以如何最好地部署我的命令行实用程序和支持模块,并通过PyPI发布它们。

回答

0

总之:你不能。 Distutils不支持这一点。

+0

那么我使用哪个工具集来实现这个功能? –

1

听起来像a.py是一个脚本,b.py和c.py是模块。

如果是这样,请使用setup.py的“scripts”选项将a.py安装到可执行的目录中。 (在Linux下这是可能的/ usr/bin中)

https://docs.python.org/2/distutils/setupscript.html#distutils-installing-scripts

如果你想在一个特定的地方(例如, '在/ usr/local/sbin中')安装文件使用 “data_files” 选项。

请参阅https://docs.python.org/2/distutils/setupscript.html#installing-additional-files