$貓test.pyPython和Bash命令行env vars的處理方式不同?
#!/usr/bin/env python
# coding=utf-8
import os
print (os.environ.get('test'))
$測試= 4蟒test.py
4
$測試= 4;蟒蛇test.py
None
雖然在外殼我買了蟒蛇不同:
$測試= 4;回聲$測試
4
但是:
$測試= 2
$測試= 4回聲$測試
2
所以我感到困惑的Python和bash如何處理這種情況。有人可以解釋嗎?
最後一種情況如何? – jiamo
@jiamo檢查我的編輯... – heemayl
我可以理解「發生在運行內置回聲之前」。 。爲什麼它不喜歡python將var傳遞給命令的env。 'sh -c'似乎打開了一個像python這樣的新shell。所以解析步驟。看起來env它aready是。 – jiamo