我正在運行用Python編寫的Test Harness。在通過此測試工具運行測試之前,我通過一個在導出變量後調用測試工具的shell腳本導出一些環境變量。當線束出現時,它會檢查變量是否在環境中,並根據env變量中的值進行操作。甚至在退出後,Python腳本中的環境變量仍然保留
然而,在測試執行後,我認爲環境變量值在下次沒有被清除,即使這些值沒有通過shell腳本設置,它也會得到這些值。
如果它們被明確設置,線束將拾取新值,但如果我們下次清除它,它會再次拾取第一次運行中設置的值。
我試過在每次測試執行後都使用「del os.environ ['var']」命令清除變量,但這並沒有解決問題。有誰知道爲什麼這些價值得到保留?
在shell上,這些變量沒有按照'env'unix命令設置。它只是在測試工具中顯示值。沒有一個env變量將它們的值存儲在任何文本文件中。
但是,如果我們在調用python腳本之前將'env'命令放在shell腳本中並返回後,它不會顯示這些變量已設置。 – writetonikhil 2012-03-09 13:08:30
所以這意味着env變量沒有在父項中設置,但在子項中被視爲'set'。 – writetonikhil 2012-03-09 13:15:18
您在子shell中執行的所有操作都不會影響其父項。 – kev 2012-03-09 13:16:33