我有这个问题:
System A
运行 Ubuntu 并且需要Python 2.6
一堆不同的东西。
我在本机Python 2.7
上单独安装。System A
System B
Python 2.7
我有一个 python 脚本BLAH
,上面写着#!/bin/env python
。
再往下,它执行另一个脚本SIGH
,上面也说:#!/bin/env python
.
BLAH
需要在System A
or上运行System B
,并且它总是需要运行Python 2.7
----
到目前为止我的解决方案的一部分:
有一个包装脚本首先尝试查看是否which python
指向 Python 2.7
如果没关系,那么BLAH
使用该路径运行 python。
否则尝试which python2.7
使用该路径运行BLAH
,并将该路径添加到env PATH
.
此解决方案的问题是:
On System A
(单独安装了 Python 2.7)执行
时BLAH
,由于我编写了包装脚本,它与 Python 2.7 一起运行(到目前为止还可以..)
当BLAH
spawns时SIGH
,SIGH
使用 shebang 在路径中查找 python 然后它遇到了麻烦,因为它是在env
's中寻找 python,PATH
它应该python2.7
在路径中寻找。
有没有一种干净的方法来处理这个问题?
提前致谢!