linux後台執行總結

2021-08-29 12:15:43 字數 1341 閱讀 4565

1. 採用&

tar czf /data/backup.tgz /data/backup &

ctrl+d #退出 才可以,如果直接關閉視窗,程序任然會被關閉

2. 採用nohup

nohup tar czf /data/backup.tgz /data/backup

ctrl+z #掛起到後台

bg #後台執行  可以先通過jobs 檢視當前有多少job

ctrl+d  #或者 關閉視窗  程序任然會在後台執行

3.採用nohup + &

nohup tar czf /data/backup.tgz /data/backup &

ctrl+d  或者 關閉視窗  程序任然會在後台執行

4.採用(command &)

(tar czf /data/backup.tgz /data/backup &)   #會將ppid設定為1,而非當前會話的id,並且jobs檢視不到當前的作業。注意這裡的括號即是這個方法的重點。

ctrl+d  #或者 關閉視窗  程序任然會在後台執行

5.採用setid run a program in a new session

setid tar czf /data/backup.tgz /data/backup #會將ppid設定為1,而非當前會話的id

ctrl+d  #或者 關閉視窗  程序任然會在後台執行

6.採用disown

tar czf /data/backup.tgz /data/backup

ctrl+z

jobs 

bg %n

disown -h %n #n即為job的id  disown 可以配合 &使用,效果更好,因為 ctrl-z 的用途就是將當前程序掛起(suspend),然後我們就可以用jobs命令來查詢它的作業號,再用bg jobspec來將它放入後台並繼續執行。需要注意的是,如果掛起會影響當前程序的執行結果,請慎用此方法。

disown -rh -a ***  #-a所有 -r所有 -h忽略hup

7.採用screen

screen

tar czf /data/backup.tgz /data/backup

ctrl+a d    #不可以直接ctrl+d 這樣會ternimate screen

用screen -dms session name來建立乙個處於斷開模式下的會話(並指定其會話名)。 

用screen -list 來列出所有會話。 

用screen -r session name來重新連線指定會話。 screen -x session_name(id) 連線attached會話 

用快捷鍵ctrl-a d 來暫時斷開當前會話。

Linux 任務後台執行(總結)

使任務後台執行fg 將後台執行或者停止的任務放到前台執行。bg使後台停止的任務執行在後台 jobs 列出後台執行或停止或已完成的程序 ctrl z 將當前在shell上執行的任務放入後台停止,可以結合 bg 命令使任務後台執行 上面方法中執行的程序都屬於shell的子程序,所以一旦shell關閉,斷...

Linux後台執行

解除螢幕占用,並且保持命令執行。類似於windows最小化。top 檢視cpu資訊。定位將前面內容定位到後面檔案當中 echo echo aaa 1.txt 把aaa寫到 覆蓋 aaa中 echo 1.txt 可以用來清空檔案 在命令的尾部新增 進行後台執行,命令有返回還是會返回到控制台,先將返回的...

linux命令後台執行

有兩種方式 1.command 後台執行,你關掉終端會停止執行 2.nohup command 後台執行,你關掉終端也會繼續執行 1 root bin rsync.sh 用 jobs 命令檢視正在執行的任務 jobs 1 running root bin rsync.sh 如果想把它調回到前台執行,...