Dave Abrahams <[email protected]> added the comment:
It's worse than I thought; there isn't even one setting for shell that works
everywhere. This is what happens on POSIX (tested on Mac and Ubuntu):
$ mkdir /tmp/xxx
$ cd /tmp/xxx
xxx $ virtualenv /tmp/zzz
xxx $ python
Python 2.6.5 (r265:79063, Mar 23 2010, 08:10:08)
[GCC 4.2.1 (Apple Inc. build 5646) (dot 1)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from subprocess import *
>>> p = Popen(['python', '-c', 'import sys;print sys.executable'],
... stdin=PIPE,stdout=PIPE,stderr=PIPE,
... env={'PATH':'/tmp/zzz/bin'})
>>> stdout,stderr = p.communicate(None)
>>> print stdout
/tmp/zzz/bin/python
>>> print stderr
>>> p = Popen(['python', '-c', 'import sys;print sys.executable'], shell=True,
... stdin=PIPE,stdout=PIPE,stderr=PIPE,
... env={'PATH':'/tmp/zzz/bin'})
>>> stdout,stderr = p.communicate(None)
>>> print stdout
>>> print stderr
----------
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue8557>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com