在實際操作中,使用# ./myshell.sh 命令可以暫時開啟乙個程序,但是當使用者登出(logout)或者網路斷開(如斷開putty)時,終端會收到 hup(hangup)訊號從而關閉其所有子程序。
解決辦法:我們的解決辦法就有兩種途徑:要麼讓程序忽略 hup 訊號,要麼讓程序執行在新的會話裡從而成為不屬於此終端的子程序。
1.nohup命令
nohup 的用途就是讓提交的命令忽略 hangup 訊號。讓我們先使用man來看一下 nohup 的幫助資訊:
主要資訊為:run a command immune to hangups,with output to a non-tty.
執行乙個不用hangups的程序,輸出到非tty.
通過忽略 hup 訊號來使我們的程序避免中途被中斷,示例用法:
# nohup ./myshell.sh
2.setsid命令
setsid的幫助資訊為:run a program in a new session
在新會話中執行程式。
setsid可以讓程序不屬於當前終端的子程序,從而關閉時對他無影響,示例用法:
# setsid ./myshell.sh
3.&命令
將乙個或多個命名包含在「()」中就能讓這些命令在子 shell 中執行中,當我們將"&"也放入「()」內之後,我們就會發現所提交的作業並不在作業列表中,也就是說,是無法通過jobs
來檢視的。
示例:# (./myshell.sh &)
這個命令新提交的程序的父程序是init程序(程序id為1)並表示當前終端的子程序,從而也就不會受到當前終端的 hup 訊號的影響。
3年以上工作經驗的工程師的中長期規劃
中長期規劃 螺旋式上公升方式修改完善職業之路 kt人才 胡運旺 一 中長期職業發展的自我準備 1 心態上隨時做好準備 機會是給有準備的人的 有準備 是你在做準備的過程中讓 別人 認為你 有準備 別人是包括你現在的老闆和別的老闆,以及你身邊的人!他們對你的賞識程度決定了你的機會。2 專注於自己的優勢 ...
3年以上工作經驗的工程師的中長期規劃
中長期規劃 螺旋式上公升方式修改完善職業之路 kt人才 胡運旺 一 中長期職業發展的自我準備 1 心態上隨時做好準備 機會是給有準備的人的 有準備 是你在做準備的過程中讓 別人 認為你 有準備 別人是包括你現在的老闆和別的老闆,以及你身邊的人!他們對你的賞識程度決定了你的機會 2 專注於自己的優勢 ...
Linux學習積累 長期更新
1,跳脫符號,輸入命令時,用 後緊接著enter鍵可以不執行已打出的命令,轉到下一行繼續輸入命令。2,輸入命令時要刪除,分別是從游標處向前刪除指令串 ctrl u 及向後刪除指令串 ctrl k 3,指令碼程式設計 shell script vim編輯器刪除所有內容的命令為 d 4,echo這個指令...