执行python脚本时更改argv [0]

时间:2013-11-15 10:23:23

标签: python process exec argv

我有两个python脚本,foo.py和bar.py

foo.py:

#!/usr/bin/env python
os.execv('./bar.py', sys.argv)

bar.py:

#!/usr/bin/env python
print(sys.argv)

当我调用foo.py时,我得到了输出

['./bar.py']

而不是

['./foo.py']

因为pyb解释器是从shebang产生的,并将argv[0]设置为bar.py,但我想在argv[0]中保留原始脚本的名称。

有没有办法在python中做到这一点?

1 个答案:

答案 0 :(得分:-1)

正如@Daniel Roseman所说,execfile似乎正是我想要的。

很抱歉显然没有对此进行足够的研究