如何让进程后台运行?(TX)
一、運行指令 + & (如: ./a.out &)
這樣是將命令放入到一個作業(yè)隊列中了
表現(xiàn):
1、結果會輸出到終端
2、前臺出現(xiàn)進程號
3、使用Ctrl + C發(fā)送SIGINT信號,程序免疫
4、關閉session發(fā)送SIGHUP信號,程序關閉(也就是不能脫離終端運行)
5、用kill可殺死。
二、ctrl + z
進程掛起:
ctrl+z :程序放到后臺執(zhí)行
jobs :查看被掛起的程序工作號
進程的恢復:
fg 工作號 :將掛起的作業(yè)放回到前臺執(zhí)行
bg 工作號 : 將掛起的作業(yè)放到后臺執(zhí)行
三、nohup + 運行指令 (如: nohup ./a.out )
1、前臺沒有出現(xiàn)進程號
2、有一個“忽略輸入,輸出至nohup.out的提示
3、輸出也沒有出現(xiàn)在前臺
4、關閉session發(fā)送SIGHUP信號,程序免疫
3、ctrl +c 會殺死進程
四、nohup + 運行指令 + & (如:nohup ./a.out &)
1、會在終端顯示進程號
2、 將標準輸出和標準錯誤缺省會被重定向到 nohup.out 文件中
3、忽略所有掛斷(SIGHUP)信號 只能kill殺死
4、 運行指令前面 + setsid,使其父進程變成init進程,不受HUP信號的影響
5、 將 命令+ &放在()括號中,也可以使進程不受HUP信號的影響
終端退出,終端運行的進程會怎樣?
終端在退出時會發(fā)送SIGHUP給對應的bash進程
bash進程收到這個信號后首先將它發(fā)給session下面的進程
如果程序未對SIGHUP信號做特殊處理,那么進程就會隨著終端關閉而退出
總結
以上是生活随笔為你收集整理的如何让进程后台运行?(TX)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 内存覆盖及内存交换
- 下一篇: 删除二叉搜索树中的节点