Вдохновленный другим вопросом здесь, я хотел бы получить полную командную строку интерпретатора Python портативным способом. То есть, я хочу получить исходный argv
интерпретатора, а не sys.argv
, который исключает параметры самого интерпретатора (например, -m
, -O
и т.д.).
sys.flags
сообщает нам, какие логические опции были установлены, но он не говорит нам о аргументах -m
, а набор флагов будет меняться со временем, создавая нагрузку на обслуживание.
В Linux вы можете использовать procfs для извлечения исходной командной строки, но это не переносимо (и это грубо):
open('/proc/{}/cmdline'.format(os.getpid())).read().split('\0')