- 項目是用python 調用 同事寫好的 xx.sh腳本, 在手動調用的時候 發現能正常調用, 當用python代碼的時候, 就不行了, 通過日志發現, python調用的時候 不識別 ADNROID_NDK這個環境變量,
在python中 我是通過:
os.system('echo %s|sudo -S %s' % (password, replace_path + ' "' + md5debug + '"'))
這樣調用的, 這樣就不識別ADNROID_NDK這個環境變量,后來把代碼改為:
os.system('echo %s|sudo -E -S %s' % (password, replace_path + ' "' + md5debug + '"'))
就可以了, 加上參數E
百度以下 參數E的作用 就是加上-E選項后,用戶可以在sudo執行時保留當前用戶已存在的環境變量,不會被sudo重置,另外,如果用戶對于指定的環境變量沒有權限,則會報錯
還不是很理解, 這里現記錄以下
- 后來覺得這種方式太麻煩, 還需要輸入密碼,就改為以 root身份登陸 ubuntu了,
這樣可以直接調用腳本, 不用輸入密碼了