【Linux命令】进程前后台切换bg、fg

我们都知道,在 Windows 上面,我们要么让一个程序作为服务在后台一直运行,要么停止这个服务。而不能让程序在前台后台之间切换。而 Linux 提供了 fg 和 bg 命令,让我们轻松调度正在运行的任务。
Linux下的fg和bg命令是进程的前后台调度命令,即将指定号码(非进程号)的命令进程放到前台或后台运行。比如一个需要长时间运行的命令,我们就希望把它放入后台,这样就不会阻塞当前的操作;而一些服务型的命令进程我们则希望能把它们长期运行于后台。

Ctrl+C:终止并退出前台命令的执行,回到SHELL

Ctrl+Z:暂停前台命令的执行,将该进程放入后台,回到SHELL

jobs:查看当前在后台执行的命令,可查看命令进程号码

&:运行命令时,在命令末尾加上&可让命令在后台执行

fg N:将命令进程号码为N的命令进程放到前台执行,同%N

bg N:将命令进程号码为N的命令进程放到后台执行

以下是实际操作的演示:

[maple@linux ~]$  ping baidu.com -a >/dev/null &
[1] 12879

[maple@linux ~]$ jobs
[1]+  Running                 ping baidu.com -a > /dev/null &

[maple@linux ~]$ ping google.com -a >/dev/null
#Ctrl+Z
[2]+  Stopped                 ping google.com -a > /dev/null
[maple@linux ~]$ jobs
[1]-  Running                 ping baidu.com -a > /dev/null &
[2]+  Stopped                 ping google.com -a > /dev/null

[maple@linux ~]$ fg 1
ping baidu.com -a > /dev/null
#Ctrl+Z
[1]+  Stopped                 ping baidu.com -a > /dev/null
[maple@linux ~]$ jobs
[1]+  Stopped                 ping baidu.com -a > /dev/null
[2]-  Stopped                 ping google.com -a > /dev/null

[maple@linux ~]$ bg 2
[2]- ping google.com -a > /dev/null &
[maple@linux ~]$ jobs
[1]+  Stopped                 ping baidu.com -a > /dev/null
[2]-  Running                 ping google.com -a > /dev/null &

[maple@linux ~]$ %2
ping google.com -a > /dev/null
#Ctrl+Z
[2]+  Stopped                 ping google.com -a > /dev/null
[maple@linux ~]$ jobs
[1]-  Stopped                 ping baidu.com -a > /dev/null
[2]+  Stopped                 ping google.com -a > /dev/null

参考链接:
(1)http://my.oschina.net/huxuanhui/blog/13844
(2)http://witmax.cn/linux-fg-bg.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值