首页 > python怎么打包生成linux命令行可用软件?

python怎么打包生成linux命令行可用软件?

最近写了一个小工具,用setuptools打包,安装后 import 可以导入,如果我想生成一个命令行直接可以运行程序要怎么做?


打包的時候指定 console_script

http://guide.python-distribute.org/creation.html#entry-points


pyInstaller能够打包成单个可执行文件,支持Linux,windows,mac os x


确保文件第一行这么写,其中X用你自己代码对应的python版本就可以了,比如3
#!/usr/bin/env pythonX
然后将这个文件权限修改为可执行
chmod +x yourpyfile
然后讲该文件的目录加入path或者把该文件放到或者连接到path中的任何目录
比如你曾export PATH="$PATH:~/bin"过这个目录,你可以mv path/to/youpyfile ~/bin或者ln -s path/to/youpyfile ~/bin/yourcmd
这样就可以在命令行里面使用了。


console_scripts。给你个例子好了:

#!/usr/bin/env python3
# vim:fileencoding=utf-8

from setuptools import setup, find_packages
import nvchecker

setup(
  name = 'nvchecker',
  version = nvchecker.__version__,
  packages = find_packages(),
  install_requires = ['tornado'],
  entry_points = {
    'console_scripts': [
      'nvchecker = nvchecker.main:main',
      'nvtake = nvchecker.tools:take',
      'nvcmp = nvchecker.tools:cmp',
    ],
  },

  author = 'lilydjwg',
  author_email = 'lilydjwg@gmail.com',
  description = 'New version checker for software',
  license = 'MIT',
  keywords = 'new version build check',
  url = 'https://github.com/lilydjwg/nvchecker',
)

直接用Shebang指定解释器为python,然后link到/usr/local/bin

【热门文章】
【热门文章】