9
我想在Python程序中獲得操作系統argv [0]的真實值。 Python的sys.argv [0]不是這個值:它是正在執行的Python腳本的名稱(有一些例外)。我要的是一個foo.py當作爲如何在Python中獲得操作系統的argv [0](不是sys.argv [0])?
瑣碎的程序
#! /usr/bin/env python
import sys
print sys.argv[0]
執行將打印 「foo.py」 而不是將打印 「somestring」。
有誰知道如何獲得這個? Python C API中有一些相關的功能:例如Py_GetProgramName。但是這似乎並沒有在任何地方暴露於Python世界。 Py_GetProgramFullPath不依賴於argv [0],而是試圖獲取Python解釋器的路徑。 (這個值傳播到sys.executable,所以這個變量也是不正確的。)我真的必須編寫一個C模塊來獲得這個值嗎?
編輯:還問(但沒有幫助回答)here。
這不是一個bash的bug,`exec`命令用另一個程序替換了shell。 – interjay 2011-02-01 21:08:08