參考文獻 &命令把做業放到後臺執行,不佔用終端(屏幕)html
&命令: linux
xxx >/dev/null 2>&1 & 屏蔽一切log
xxx >/tmp/xxx.log 2>&1 & 能夠在xxx.log中看日誌shell
適合在後臺運行的命令有find、費時的打印做業、費時的排序及一些shell腳本。在後臺運行做業時要小心:須要用戶交互的命令不要放在後臺執行,由於這樣你的機器就會在那裏傻等。bash
不過,做業在後臺運行同樣會將結果輸出到屏幕上。若是放在後臺運行的做業會產生大量的輸出,最好使用下面的方法把它的輸出重定向到某個文件中:
command >out.file 2>&1 &
在上面的例子中,全部的標準輸出和錯誤輸出都將被重定向到一個叫作out.file 的文件中。當你成功地提交進程之後,就會顯示出一個進程號,能夠用它來監控該進程,或殺死它。session
Linux後臺進程管理 注意在使用jobnumber時當前任務的概念ssh
jobs [-l] 查看當前在後臺正在運行或者被掛起的任務。ide
fg [%jobnumber] 將後臺任務調至前臺繼續運行工具
Ctrl+z 將一個在前臺正在執行的命令放到後臺,並處於暫停狀態 (能夠組合bg使用) -- 掛起前臺進程 (Ctrl+c 終止前臺進程)ui
bg [%jobnumber] 講一個在後臺暫停的命令變爲繼續執行(在後臺)spa
終止後臺進程
1.jobs 查看kill %jobnumber
2.ps 查看 kill [-SIGKILL] pid
5 Ways to Execute UNIX / Linux Commands (and Shell Scripts) in Background
1.nohup 避免退出登陸時後臺執行的命令或者腳本被自動終止
目前看來在Ubuntu Server上不存在這個問題,可是從新登陸以後沒法再鏈接到這個會話,jobs沒法查看後臺任務。
2.screen命令執行,從新登陸後鏈接到會話 linux下的screen命令用來後臺執行
3.at 指定日期與時間容許,做爲批處理執行
4.watch連續執行命
ssh 關閉後仍保持當前運行的進程 -- 相似前述內容的一個綜合以及一些新的東西,nohup命令參考
使用screen命令簡單介紹以下:
screen perl static-100-10.pl
須要中斷鏈接:
Ctrl+a d
在每一個screen session 下,全部命令都以 ctrl+a(C-a) 開始。
查詢screen進程:
ps x
查詢screen做業
screen -ls
重連
screen -r 22011
screen介紹
1.使用telnet或SSH遠程登陸linux時,若是鏈接非正常中斷,從新鏈接時,系統將開一個新的session,沒法恢復原來的session,screen命令能夠解決這個問題。Screen工具是一個終端多路轉接器,在本質上,這意味着你可以使用一個單一的終端窗口運行多終端的應用。screen爲多重視窗管理程序,此處的視窗是指一個全屏幕的文字模式畫面。一般只有在使用telnet登入主機或是使用老式的終端機時,纔有可能用到screen程序。
2.語法
screen [-AmRvx -ls -wipe][-d <做業名稱>][-h <行數>][-r <做業名稱>][-s <shell>][-S <做業名稱>]
3.參數說明
4.使用說明
來源:百度百科
參考連接 linux 技巧:使用 screen 管理你的遠程會話