1. command & : 后臺(tái)運(yùn)行,,你關(guān)掉終端會(huì)停止運(yùn)行。 2. nohup command & : 后臺(tái)運(yùn)行,,你關(guān)掉終端也會(huì)繼續(xù)運(yùn)行,。 3. setsid command & : 后臺(tái)運(yùn)行,你關(guān)掉終端也會(huì)繼續(xù)運(yùn)行,。 4. (command &) : 后臺(tái)運(yùn)行,,你關(guān)掉終端也會(huì)繼續(xù)運(yùn)行。
一,、bg,、fg,、jobs Linux提供了fg和bg命令,讓你輕松調(diào)度正在運(yùn)行的任務(wù),。假設(shè)你發(fā)現(xiàn)前臺(tái)運(yùn)行的一個(gè)程序需要很長(zhǎng)的時(shí)間,,但是需要干其他的事情,你就可以用ctrl-z,,掛起這個(gè)程序,,然后可以看到系統(tǒng)提示,然后我們可以把程序調(diào)度到后臺(tái)執(zhí)行,。
二,、&(當(dāng)前shell為父進(jìn)程,shell退出后子進(jìn)程立即退出) 顯示當(dāng)前shell的PID:echo $$ tail -f main.cpp &
三,、nohup &(當(dāng)前shell為父進(jìn)程,,shell退出后忽略hangup信號(hào),并設(shè)置父進(jìn)程為init) nohup tail -f main.cpp & #一般會(huì)進(jìn)行輸出重定向,,否則產(chǎn)生nohup.out文件,。 jobs -l
四、setsid(init直接為父進(jìn)程) ps -ef | grep tail root 22520 1 0 22:53 ? 00:00:00 tail -f main.cpp
五,、(command &)(進(jìn)程在subshell中執(zhí)行,,等價(jià)于setsid)
ps -ef | grep tail
六、python腳本或者shell腳本啟動(dòng)的后臺(tái)進(jìn)程 1,、ctrl+c 腳本被殺死 第一個(gè)tail沒(méi)被殺死 第二個(gè)tail被殺死 2,、kill 腳本被殺死 第一個(gè)和第二個(gè)tail都沒(méi)有被殺死
#!/bin/bash tail -f main.cpp & tail -f main.cpp
#!/usr/bin/bash import os os.system('tail -f main.cpp &') os.system('tail -f main.cpp') |
|
來(lái)自: 戴維圖書(shū)館 > 《linux》