1. 程式人生 > >linux中巧用ctrl-z後臺運行程序

linux中巧用ctrl-z後臺運行程序

-i job lis pcl tcp cps top lin 管理後臺

我們知道後臺運行任務時,可以用 () 和 &,但是有的時候我們會忘記加&,對於執行需要很長時間的任務來說,Ctrl+Z可能是一個比較好的把任務轉入後臺的方法。

當我們按下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

這樣,你在控制臺上就只能等待這個任務完成了.

& 將指令丟到後臺中去執行

[ctrl]+z 將前臺任務丟到後臺中暫停

jobs 查看後臺的工作狀態

fg %jobnumber 將後臺的任務拿到前臺來處理

bg %jobnumber 將任務放到後臺中去處理

kill 管理後臺的任務

命令運行時使用CTRL+Z,強制當前進程轉為後臺,並使之停止。

1. 使進程恢復運行(後臺)

(1)使用命令bg

Example:

#:~/unp/tcpcliserv$ ./tcpserv01

*這裏使用CTRL+Z,此時serv01是停止狀態*

[1]+ Stopped ./tcpserv01

#:~/unp/tcpcliserv$ bg

[1]+ ./tcpserv01 & *此時serv01運行在後臺*

#:~/unp/tcpcliserv$

(2)如果用CTRL+Z停止了幾個程序呢?

Example:

#:~/unp/tcpcliserv$ jobs

[1]- Running ./tcpserv01 &

[2]+ Stopped ./tcpcli01 127.0.0.1

#:~/unp/tcpcliserv$ bg %1

bash: bg:任務 1 已轉入後臺 *後臺運行*

2. 使進程恢復至前臺運行

Example:

#:~/unp/tcpcliserv$ ./tcpserv04

[1]+ Stopped ./tcpserv04

#:~/unp/tcpcliserv$ fg

。/tcpserv04

總結:

(1) CTRL+Z停止進程並放入後臺

(2) jobs 顯示當前暫停的進程

(3) bg %N 使第N個任務在後臺運行(%前有空格)

(4) fg %N 使第N個任務在前臺運行

默認bg,fg不帶%N時表示對最後一個進程操作

本文轉載自:http://blog.chinaunix.net/uid-10219166-id-2968756.html

linux中巧用ctrl-z後臺運行程序