fg、bg,、jobs、&,、nohup,、ctrl + z命令 一,、& 加在一個(gè)命令的最后,可以把這個(gè)命令放到后臺(tái)執(zhí)行,如gftp &, 二,、ctrl + z 可以將一個(gè)正在前臺(tái)執(zhí)行的命令放到后臺(tái),,并且處于暫停狀態(tài),不可執(zhí)行 三,、jobs 查看當(dāng)前有多少在后臺(tái)運(yùn)行的命令 jobs -l選項(xiàng)可顯示所有任務(wù)的PID,,jobs的狀態(tài)可以是running, stopped, Terminated,但是如果任務(wù)被終止了(kill),,shell 從當(dāng)前的shell環(huán)境已知的列表中刪除任務(wù)的進(jìn)程標(biāo)識(shí),;也就是說(shuō),jobs命令顯示的是當(dāng)前shell環(huán)境中所起的后臺(tái)正在運(yùn)行或者被掛起的任務(wù)信息,; 四,、fg 將后臺(tái)中的命令調(diào)至前臺(tái)繼續(xù)運(yùn)行 如果后臺(tái)中有多個(gè)命令,,可以用fg %jobnumber將選中的命令調(diào)出,,%jobnumber是通過(guò)jobs命令查到的后臺(tái)正在執(zhí)行的命令的序號(hào)(不是pid) 五,、bg 將一個(gè)在后臺(tái)暫停的命令,變成繼續(xù)執(zhí)行 (在后臺(tái)執(zhí)行) 如果后臺(tái)中有多個(gè)命令,可以用bg %jobnumber將選中的命令調(diào)出,,%jobnumber是通過(guò)jobs命令查到的后臺(tái)正在執(zhí)行的命令的序號(hào)(不是pid) 將任務(wù)轉(zhuǎn)移到后臺(tái)運(yùn)行: 先ctrl + z;再bg,,這樣進(jìn)程就被移到后臺(tái)運(yùn)行,,終端還能繼續(xù)接受命令。 概念:當(dāng)前任務(wù) 如果后臺(tái)的任務(wù)號(hào)有2個(gè),[1],[2],;如果當(dāng)?shù)谝粋€(gè)后臺(tái)任務(wù)順利執(zhí)行完畢,,第二個(gè)后臺(tái)任務(wù)還在執(zhí)行中時(shí),,當(dāng)前任務(wù)便會(huì)自動(dòng)變成后臺(tái)任務(wù)號(hào)碼“[2]” 的后臺(tái)任務(wù),。所以可以得出一點(diǎn),即當(dāng)前任務(wù)是會(huì)變動(dòng)的。當(dāng)用戶輸入“fg”,、“bg”和“stop”等命令時(shí),如果不加任何引號(hào),,則所變動(dòng)的均是當(dāng)前任務(wù) 六:nohup 如果你正在運(yùn)行一個(gè)進(jìn)程,而且你覺(jué)得在退出帳戶時(shí)該進(jìn)程還不會(huì)結(jié)束,,那么可以使用nohup命令。該命令可以在你退出帳戶/關(guān)閉終端之后繼續(xù)運(yùn)行相應(yīng)的進(jìn)程,。 進(jìn)程的終止 后臺(tái)進(jìn)程的終止: 方法一: 通過(guò)jobs命令查看job號(hào)(假設(shè)為num),然后執(zhí)行kill %num 方法二: 通過(guò)ps命令查看job的進(jìn)程號(hào)(PID,,假設(shè)為pid),,然后執(zhí)行kill pid 前臺(tái)進(jìn)程的終止: ctrl+c kill的其他作用 kill除了可以終止進(jìn)程,,還能給進(jìn)程發(fā)送其它信號(hào),,使用kill -l 可以察看kill支持的信號(hào),。 SIGTERM是不帶參數(shù)時(shí)kill發(fā)送的信號(hào),,意思是要進(jìn)程終止運(yùn)行,,但執(zhí)行與否還得看進(jìn)程是否支持,。如果進(jìn)程還沒(méi)有終止,可以使用kill -SIGKILL pid,,這是由內(nèi)核來(lái)終止進(jìn)程,,進(jìn)程不能監(jiān)聽(tīng)這個(gè)信號(hào)。 進(jìn)程的掛起(暫停的意思吧) 后臺(tái)進(jìn)程的掛起: 在solaris中通過(guò)stop命令執(zhí)行,,通過(guò)jobs命令查看job號(hào)(假設(shè)為num),,然后執(zhí)行stop %num; 在redhat中,,不存在stop命令,,可通過(guò)執(zhí)行命令kill -stop PID,將進(jìn)程掛起,; 當(dāng)要重新執(zhí)行當(dāng)前被掛起的任務(wù)時(shí),,通過(guò)bg %num 即可將掛起的job的狀態(tài)由stopped改為running,仍在后臺(tái)執(zhí)行,;當(dāng)需要改為在前臺(tái)執(zhí)行時(shí),,執(zhí)行命令fg %num即可,; 前臺(tái)進(jìn)程的掛起: ctrl+Z; 使用jobs 查看任務(wù),。 使用fg %n 關(guān)閉,。 |
|