A. linux後台運行、關閉、查看後台任務常用命令
一、&
加在一個命令的最後,可以把這個命令放到後台執行,如:
[root@bqh-01 ~]# watch -n 3 "sh 1.sh " #每3s在後台執行一次 1.sh 腳本
二、ctrl + z
可以將一個正在前台執行的命令放到後台,並且處於暫停狀態。
三、jobs
查看當前有多少在後台運行的命令
jobs -l選項可顯示所有任務的PID,jobs的狀態可以是running, stopped, Terminated。但是如果任務被終止了(kill),shell 從當前的shell環境已知的列表中刪除任務的進程標識。
將後台中的命令調至 前台 繼續運行。如果後台中有多個命令,可以用fg %jobnumber(是命令編號,不是進程號)將選中的命令調出。
五、bg
將一個在後台暫停的命令,變成在 後台 繼續執行。如果後台中有多個命令,可以用bg %jobnumber將選中的命令調出。
六、kill
****
前台進程的終止:Ctrl+c
****七、 nohup
如果讓程序始終在後台執行,即使關閉當前的終端也執行(之前的&做不到),這時候需要nohup。該命令可以在你退出帳戶/關閉終端之後繼續運行相應的進程。關閉中斷後,在另一個終端jobs已經無法看到後台跑得程序了,此時利用ps(進程查看命令)
<pre style="margin: 0px; padding: 0px; color: rgb(51, 51, 51); font-size: 14px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;">ps -aux | grep "1.sh" #a:顯示所有程序 u:以用戶為主的格式來顯示 x:顯示所有程序,不以終端機來區分</pre>