Linux任務(wù)前后臺(tái)的切換
?
?
Shell支持作用控制,有以下命令實(shí)現(xiàn)前后臺(tái)切換:
1. command& 讓進(jìn)程在后臺(tái)運(yùn)行
2. jobs 查看后臺(tái)運(yùn)行的進(jìn)程
3. fg %n 讓后臺(tái)運(yùn)行的進(jìn)程n到前臺(tái)來(lái)
4. bg %n 讓進(jìn)程n到后臺(tái)去
? ? ? 5. kill %n 殺死job
? ? ? 5. kill %n 殺死job
PS:"n"為jobs命令查看到的job編號(hào),不是進(jìn)程編號(hào).
fg、bg、jobs、&、ctrl + z都是跟系統(tǒng)任務(wù)有關(guān)的,雖然現(xiàn)在基本上不怎么需要用到這些命令,但學(xué)會(huì)了也是很實(shí)用的.
?
?
一、& 最經(jīng)常被用到
這個(gè)用在一個(gè)命令的最后,可以把這個(gè)命令放到后臺(tái)執(zhí)行
?
二、ctrl + z
可以將一個(gè)正在前臺(tái)執(zhí)行的命令放到后臺(tái),并且暫停
?
三、jobs
查看當(dāng)前有多少在后臺(tái)運(yùn)行的命令
?
四、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)中有多個(gè)命令,可以用bg %jobnumber將選中的命令調(diào)出,%jobnumber是通過(guò)jobs命令查到的后臺(tái)正在執(zhí)行的命令的序號(hào)(不是pid)。
?
?
實(shí)例:
假設(shè)你發(fā)現(xiàn)前臺(tái)運(yùn)行的一個(gè)程序需要很長(zhǎng)的時(shí)間,但是需要干其他的事情,你就可以用 Ctrl-Z ,終止這個(gè)程序,然后可以看到系統(tǒng)提示:
[1]+ Stopped /root/bin/rsync.sh
如果沒(méi)有此提示,則用 jobs 命令查看任務(wù):
#jobs
[1]+ suspended /root/bin/rsync.sh &
然后我們可以把程序調(diào)度到后臺(tái)執(zhí)行:(bg 后面的數(shù)字為作業(yè)號(hào))
#bg 1
[1]+ /root/bin/rsync.sh &
用 jobs 命令查看正在運(yùn)行的任務(wù):
#jobs
[1]+ Running /root/bin/rsync.sh &
如果想把它調(diào)回到前臺(tái)運(yùn)行,可以用
#fg 1
/root/bin/rsync.sh
這樣,你在控制臺(tái)上就只能等待這個(gè)任務(wù)完成了。?
?
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
