2013-10-19 39 views
0

我正在努力自動化部署腳本,我必須以sudo用戶的身份運行所有步驟,當我嘗試首先在我的腳本中sudo時像下面那樣提示我對於密碼,然後腳本的其餘部分不執行,當我退出sudo然後只執行它。如何首先使用sudo登錄,然後運行其餘的Unix Shell腳本

"sudo -u username bash" 

請幫助我如何實現這一點,或者我必須先使用sudo登錄,然後才能運行我的腳本?

+0

'須藤-u用戶名bash'將開始一個新的bash shell作爲指定的用戶。如果你不想要一個新的shell,爲什麼要這樣做? – janos

+0

謝謝我沒有意識到bash會創建新shell –

回答

0

你可以改爲以sudo的方式運行腳本。

sudo sh ./script.sh 

這樣整個腳本將作爲sudo用戶運行,並且只會提示一次。

如果你想仍然使用sudo -u,你可以使用它像這樣,而不是:

sudo -u username bash 

你可以這樣做:

sudo -u username sh ./script.sh 
+0

感謝Praveen讓我試試這個。 –