linux(redhat)下,執行了
baseinfo.sh>baseinfo.log 2>&1 &
,系統顯示是後台程序,退出ssh後,該程序被終止,導致程序無法長時間執行
nohup baseinfo.sh>baseinfo.log 2>&1 &
新增如下**,發現baseinfo.sh已經是後台程序,按理說,baseinfo.sh已經是後台程序了,加上nohup也能正常執行了,但是不知道為什麼,我直接關掉ssh後,baseinfo.sh程序也退出了,後面我們使用了如下**可以成功的新增了後台程序
nohup ./baseinfo.sh>baseinfo.log 2>&1 &
這裡需要說明一下,將./baseinfo.sh
的結果將標準輸出的結果輸出到baseinfo.log,如果不想要輸出結果,可以將結果重定向到/dev/null丟棄輸出結果,2>&1表明是將錯誤輸出按照標準輸出的方式同樣處理,也就是將標準輸出和錯誤輸出 都輸出到baseinfo.log中,最後乙個&表示是乙個後台程序
這裡比上一條指令沒有多什麼,就多了乙個./
,但是為什麼沒加./
時,退出ssh,程序就結束了,感覺很懵比,我在其他伺服器沒有加上./
依然是能獨立執行的守護程序。
參考資料:
Linux守護程序
linux下守護程序一般分為5步,但是實際上只有前兩步是關鍵。第一步 建立子程序,關閉父程序。使用fork 建立,父程序exit 退出。關鍵第二步 建立新的會話id,setsid 作用是使子程序擺脫原有的會話 程序組 終端的控制,其實,linux下每個程序都是由一號程序建立而來的,每個程序都是1號程...
Linux 守護程序
守護程序daemon,是生存期較長的一種程序,名字一般以字母d結尾。它們常常在系統自舉時啟動,僅在系統關閉時才終止。因為它們沒有控制終端,所以說它們是在後台執行的。linux系統有很多守護程序,它們執行日常事務活動。自舉只有兩個功能 加電自檢和磁碟引導。加電自檢 當我們按下計算機電源開關時,頭幾秒鐘...
Linux守護程序
程式設計級別 一 守護程序的概念 守護程序是一種生存期比較長的程序,常常在系統自舉時啟動,在系統關閉時退出。因為他們沒有控制終端,因此是在後台執行的。二 守護程序的程式設計規則 1清除檔案模式建立遮蔽字 2成為乙個新的會話首程序 3略hup訊號。然後再次fork 4改變當前工作路徑 5關閉所有的檔案...