2015-07-10 51 views
0
[[email protected] ~]$ shopt | grep hupon 
huponexit  off 

[[email protected] ~] sqldeveloper & -- program is being ran 

由於上述情況,已經說明退出時不會發送hup信號。但是當我關閉shell時,程序仍然關閉。huponexit off and&輸入 - 但程序仍然關閉

爲什麼?

+0

是'sqldeveloper'仍然附着在TTY和關閉時,它消失了?使用'nohup sqldeveloper&'工作嗎? –

+0

@EtanReisner使用nohup會起作用。但是我不明白的是我的胡內特已經關閉了。那麼爲什麼和不工作。 – Noob

+0

如果在運行'sqldeveloper'時使用手動重定向來關閉stdin,stdout和stderr,當您退出終端時它仍然會關閉?你可以這樣運行,然後運行'ls -l/proc//fd'的pid並向我們顯示輸出結果嗎? –

回答

0

這可能是因爲sqldeveloper連接到終端。 nohup作品因爲它會自動脫離的命令 - 看到從nohup(1)此摘錄:

如果標準輸入是終端,從/ dev/null的重定向它。如果標準輸出是一個終端,如果可能的話,將輸出追加到'nohup.out',否則返回'$ HOME/nohup.out'。如果標準錯誤是終端,則將其重定向到標準輸出。要將輸出保存到FILE,請使用'nohup COMMAND> FILE'。

,如果你手工做它應該不nohup工作 - 嘗試,例如:

sqldeveloper < /dev/null &> /dev/null & 
+0

與你的命令相同,當我關閉終端時,sqldeveloper也會關閉以及 – Noob

+0

看起來停止的工作無論'huponexit'選項都會被終止。在後臺運行程序後,檢查'jobs'命令的輸出。如果這個過程停止了,請寫下來 - 必須有一個原因。 – werkritter

+0

[oracle @ centos1〜] $ shopt | grep的HUP huponexit \t關閉 甲骨文@ centos1〜] $工作 [1] +運行的SQLDeveloper& 甲骨文@ centos1〜] $ – Noob

相關問題