首页 Linux fg 与 bg 命令
文章
取消

Linux fg 与 bg 命令

当前我们有如下的任务:

1
2
3
4
5
[root@centos uphie]# jobs -l
[1]  23366 停止                  python sleep1.py
[2]- 23369 停止                  python sleep2.py
[3]+ 23370 停止                  python sleep3.py
[4]  23375 运行中               python sleep4.py &

bg

bg 命令将暂停的后台程序继续在后台执行。

如我们把作业号为2的暂停的作业重新在后台执行:

1
2
3
4
5
6
7
[root@centos uphie]# bg 2
[2]- python sleep2.py &
[root@centos uphie]# jobs -l
[1]- 23366 停止                  python sleep1.py
[2]  23369 运行中               python sleep2.py &
[3]+ 23370 停止                  python sleep3.py
[4]  23375 运行中               python sleep4.py &

我们可以看到作业号为2的进程,执行执行命令是 python sleep2.py,重新放到后台执行后,变成了 python sleep2.py &

fg

fg 命令将暂停的后台程序放到前台执行。

我们把作业号为3的作业放到前台执行,由于阻塞执行,后面被笔者终止了:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@centos uphie]# jobs -l
[1]- 23366 停止                  python sleep1.py
[2]  23369 运行中               python sleep2.py &
[3]+ 23370 停止                  python sleep3.py
[4]  23375 运行中               python sleep4.py &
[root@centos uphie]#
[root@centos uphie]#
[root@centos uphie]# fg 1
python sleep1.py

^CTraceback (most recent call last):
  File "sleep1.py", line 2, in <module>
    time.sleep(1000)
KeyboardInterrupt
本文由作者按照 CC BY 4.0 进行授权