2012-03-16 60 views
2

我努力將nohup,open_init_pty和sudo結合在一起。事情是這樣的:無法獲得nohup,open_init_pty和sudo一起工作

nohup open_init_pty sudo bash -c "command1;command2" 

我的要求是有點怪:

  • 使用的nohup使母貝可以爲實際退出通過PHP遠程SSH需要這個
  • 內乾淨
  • open_init_pty sudo運行特權命令
  • 運行多個命令 - 因此bash -c行

我試圖縮小使用不同的組合問題:

# works OK, output in nohup.out 
nohup sudo bash -c "echo hello" 

# works OK, hello output to console 
open_init_pty sudo bash -c "echo hello" 

# doesn't work 
nohup open_init_pty sudo bash -c "echo hello" 

我在做什麼錯?

+0

呃......呃。當我正在遷移到[unix.se]時,我刪除了賞金。但這是*暫時*在話題上。所以,如果你想把獎金放回去。否則,@reply和我會遷移。 – Will 2012-03-19 15:20:20

回答

1

沒有nohup的情況下怎麼樣?您可以啓動一個子shell這樣的:

(open_init_pty sudo bash -c "echo hello") 

我有時會這樣對年底&,但你的例子並沒有在後臺運行。無論如何,這可能會實現你的目標,即在父shell退出時不會終止工作。