小編給大家分享一下linux后臺(tái)執(zhí)行命令&和nohup有什么用,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

創(chuàng)新互聯(lián) - 四川雅安服務(wù)器托管,四川服務(wù)器租用,成都服務(wù)器租用,四川網(wǎng)通托管,綿陽(yáng)服務(wù)器托管,德陽(yáng)服務(wù)器托管,遂寧服務(wù)器托管,綿陽(yáng)服務(wù)器托管,四川云主機(jī),成都云主機(jī),西南云主機(jī),四川雅安服務(wù)器托管,西南服務(wù)器托管,四川/成都大帶寬,機(jī)柜大帶寬,四川老牌IDC服務(wù)商
當(dāng)我們?cè)诮K端或控制臺(tái)工作時(shí),可能不希望由于運(yùn)行一個(gè)作業(yè)而占住了屏幕,因?yàn)榭赡苓€有更重要的事情要做,比如閱讀電子郵件。對(duì)于密集訪問(wèn)磁盤(pán)的進(jìn)程,我們更希望它能夠在每天的非負(fù)荷高峰時(shí)間段運(yùn)行(例如凌晨)。為了使這些進(jìn)程能夠在后臺(tái)運(yùn)行,也就是說(shuō)不在終端屏幕上運(yùn)行,有幾種選擇方法可供使用。
&
當(dāng)在前臺(tái)運(yùn)行某個(gè)作業(yè)時(shí),終端被該作業(yè)占據(jù);可以在命令后面加上& 實(shí)現(xiàn)后臺(tái)運(yùn)行。例如:sh test.sh &
適合在后臺(tái)運(yùn)行的命令有f i n d、費(fèi)時(shí)的排序及一些s h e l l腳本。在后臺(tái)運(yùn)行作業(yè)時(shí)要當(dāng)心:需要用戶(hù)交互的命令不要放在后臺(tái)執(zhí)行,因?yàn)檫@樣你的機(jī)器就會(huì)在那里傻等。不過(guò),作業(yè)在后臺(tái)運(yùn)行一樣會(huì)將結(jié)果輸出到屏幕上,干擾你的工作。如果放在后臺(tái)運(yùn)行的作業(yè)會(huì)產(chǎn)生大量的輸出,最好使用下面的方法把它的輸出重定向到某個(gè)文件中:
command > out.file 2>&1 &
這樣,所有的標(biāo)準(zhǔn)輸出和錯(cuò)誤輸出都將被重定向到一個(gè)叫做out.file 的文件中。
PS:當(dāng)你成功地提交進(jìn)程以后,就會(huì)顯示出一個(gè)進(jìn)程號(hào),可以用它來(lái)監(jiān)控該進(jìn)程,或殺死它。(ps -ef | grep 進(jìn)程號(hào) 或者 kill -9 進(jìn)程號(hào))
nohup
使用&命令后,作業(yè)被提交到后臺(tái)運(yùn)行,當(dāng)前控制臺(tái)沒(méi)有被占用,但是一但把當(dāng)前控制臺(tái)關(guān)掉(退出帳戶(hù)時(shí)),作業(yè)就會(huì)停止運(yùn)行。nohup命令可以在你退出帳戶(hù)之后繼續(xù)運(yùn)行相應(yīng)的進(jìn)程。nohup就是不掛起的意思( no hang up)。該命令的一般形式為:
nohup command &
如果使用nohup命令提交作業(yè),那么在缺省情況下該作業(yè)的所有輸出都被重定向到一個(gè)名為nohup.out的文件中,除非另外指定了輸出文件:
nohup command > myout.file 2>&1 &
使用了nohup之后,很多人就這樣不管了,其實(shí)這樣有可能在當(dāng)前賬戶(hù)非正常退出或者結(jié)束的時(shí)候,命令還是自己結(jié)束了。所以在使用nohup命令后臺(tái)運(yùn)行命令之后,需要使用exit正常退出當(dāng)前賬戶(hù),這樣才能保證命令一直在后臺(tái)運(yùn)行。
ctrl + z
可以將一個(gè)正在前臺(tái)執(zhí)行的命令放到后臺(tái),并且處于暫停狀態(tài)。
Ctrl+c
終止前臺(tái)命令。
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í)。
2>&1解析
command >out.file 2>&1 &
command>out.file是將command的輸出重定向到out.file文件,即輸出內(nèi)容不打印到屏幕上,而是輸出到out.file文件中。
2>&1 是將標(biāo)準(zhǔn)出錯(cuò)重定向到標(biāo)準(zhǔn)輸出,這里的標(biāo)準(zhǔn)輸出已經(jīng)重定向到了out.file文件,即將標(biāo)準(zhǔn)出錯(cuò)也輸出到out.file文件中。最后一個(gè)&, 是讓該命令在后臺(tái)執(zhí)行。
試想2>1代表什么,2與>結(jié)合代表錯(cuò)誤重定向,而1則代表錯(cuò)誤重定向到一個(gè)文件1,而不代表標(biāo)準(zhǔn)輸出;換成2>&1,&與1結(jié)合就代表標(biāo)準(zhǔn)輸出了,就變成錯(cuò)誤重定向到標(biāo)準(zhǔn)輸出.
看完了這篇文章,相信你對(duì)“l(fā)inux后臺(tái)執(zhí)行命令&和nohup有什么用”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
當(dāng)前標(biāo)題:linux后臺(tái)執(zhí)行命令&和nohup有什么用
網(wǎng)頁(yè)網(wǎng)址:http://www.chinadenli.net/article22/gicgjc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、手機(jī)網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計(jì)、移動(dòng)網(wǎng)站建設(shè)、網(wǎng)站導(dǎo)航、App開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
營(yíng)銷(xiāo)型網(wǎng)站建設(shè)知識(shí)