cdl*_*ary 13 python environment executable shebang
在我所有的可执行Python脚本的开头,我把shebang行:
#!/usr/bin/env python
Run Code Online (Sandbox Code Playgroud)
我在一个env python
产生Python 2.2环境的系统上运行这些脚本.我的脚本很快就会失败,因为我手动检查兼容的Python版本:
if sys.version_info < (2, 4):
raise ImportError("Cannot run with Python version < 2.4")
Run Code Online (Sandbox Code Playgroud)
如果可能的话,我不想在每个可执行文件上更改shebang行; 但是,我没有机器的管理访问权限来更改结果,env python
我不想强制使用特定版本,如:
#!/usr/bin/env python2.4
Run Code Online (Sandbox Code Playgroud)
我想避免这种情况,因为系统可能有比Python 2.4更新的版本,或者可能有Python 2.5但没有Python 2.4.
什么是优雅的解决方案?
[编辑:]我没有具体提出问题 - 我想让用户在没有手动配置的情况下执行脚本(例如路径更改或符号链接~/bin
并确保您的PATH ~/bin
在Python 2.2路径之前).也许需要一些分发工具来防止手动调整?
归档时间: |
|
查看次数: |
4600 次 |
最近记录: |