1. 程式人生 > >Linux的bg和fg命令

Linux的bg和fg命令

我們都知道,在 Windows 上面,我們要麼讓一個程式作為服務在後臺一直執行,要麼停止這個服務。而不能讓程式在前臺後臺之間切換。而 Linux 提供了 fg 和 bg 命令,讓我們輕鬆排程正在執行的任務。

假設你發現前臺執行的一個程式需要很長的時間,但是需要幹其他的事情,你就可以用 Ctrl-Z ,掛起這個程式,然後可以看到系統提示(方括號中的是作業號):
[1]+ Stopped /root/bin/rsync.sh
然後我們可以把程式排程到後臺執行:(bg 後面的數字為作業號)
#bg 1
[1]+ /root/bin/rsync.sh &
用 jobs 命令檢視正在執行的任務:
#jobs
[1]+ Running /root/bin/rsync.sh &
如果想把它調回到前臺執行,可以用
#fg 1
/root/bin/rsync.sh
這樣,你在控制檯上就只能等待這個任務完成了。

fg、bg、jobs、&、ctrl + z都是跟系統任務有關的,雖然現在基本上不怎麼需要用到這些命令,但學會了也是很實用的
一。& 最經常被用到
這個用在一個命令的最後,可以把這個命令放到後臺執行
二。ctrl + z
可以將一個正在前臺執行的命令放到後臺,並且暫停
三。jobs
檢視當前有多少在後臺執行的命令
四。fg
將後臺中的命令調至前臺繼續執行
如果後臺中有多個命令,可以用 fg %jobnumber將選中的命令調出,%jobnumber是通過jobs命令查到的後臺正在執行的命令的序號(不是pid)
五。bg
將一個在後臺暫停的命令,變成繼續執行
如果後臺中有多個命令,可以用bg %jobnumber將選中的命令調出,%jobnumber是通過jobs命令查到的後臺正在執行的命令的序號(不是pid)