Python中調用設置環境變量的bat

工做中用到一個python腳本,自動化運行某目錄下的多個vc工程代碼。python

編譯工程代碼的命令以下,直接運行會失敗,系統找不到devenv,咱們須要添加devenv.exe所在的目錄到環境變量中。ui

os.system( ' devenv  '+ name+   ' .sln /project  '+ name +  ' .vcproj /Rebuild "debug|win32" /Out  '+ name +  ' .cmp>nul ')

 

 

項目組已經有一個本身編寫的添加各類臨時環境變量的bat腳本,其中也包含vc的環境變量。因此想在python中直接先調用一下現有腳本再執行編譯命令,但發現沒效果。緣由聽說是os.system是獨立的進程,環境變量的修改對後面的語句不生效。

os.system( ' call "../../set_vs_env.bat"  ')  
os.system( ' devenv  '+ name+   ' .sln /project  '+ name +  ' .vcproj /Rebuild "debug|win32" /Out  '+ name +  ' .cmp>nul ')

 

 因此只能2個cmd命令放到一個調用中執行,也就是一次執行多個cmd,cmd命令間用&符鏈接。spa

cmd =  ' call "../../set_vs_env.bat" &  ' +  ' devenv  '+ name+   ' .sln /project  '+ name +  ' .vcproj /Rebuild "debug|win32" /Out  '+ name +  ' .cmp>nul '   os.system(cmd) 
相關文章
相關標籤/搜索