Linux下的fg和bg命令是进程的前后台调度命令,即将指定号码(非进程号)的命令进程放到前台或后台运行。比如一个需要长时间运行的命令,我们就希望把它放入后台,这样就不会阻塞当前的操作;而一些服务型的命令进程我们则希望能把它们长期运行于后台。
进程前后台操作用到以下命令或按键:
Ctrl+C
终止并退出前台命令的执行,回到SHELL
Ctrl+Z
暂停前台命令的执行,将该进程放入后台,回到SHELL
jobs
查看当前在后台执行的命令,可查看命令进程号码
&
运行命令时,在命令末尾加上&可让命令在后台执行
fg N
将命令进程号码为N的命令进程放到前台执行,同%N
bg N
将命令进程号码为N的命令进程放到后台执行
以下是实际操作的演示:
Java代码
- [www.linuxidc.com@linux ~]$ ping 88181.com -a >/dev/null &
- [1] 12879
- [www.linuxidc.com@linux ~]$ jobs
- [1]+ Running ping 88181.com -a > /dev/null &
- [www.linuxidc.com@linux ~]$
- [www.linuxidc.com@linux ~]$ ping linuxidc.com -a >/dev/null
- #Ctrl+Z
- [2]+ Stopped ping linuxidc.com -a > /dev/null
- [www.linuxidc.com@linux ~]$ jobs
- [1]- Running ping 88181.com -a > /dev/null &
- [2]+ Stopped ping linuxidc.com -a > /dev/null
- [www.linuxidc.com@linux ~]$
- [www.linuxidc.com@linux ~]$ fg 1
- ping 88181.com -a > /dev/null
- #Ctrl+Z
- [1]+ Stopped ping 88181.com -a > /dev/null
- [www.linuxidc.com@linux ~]$ jobs
- [1]+ Stopped ping 88181.com -a > /dev/null
- [2]- Stopped ping linuxidc.com -a > /dev/null
- [www.linuxidc.com@linux ~]$
- [www.linuxidc.com@linux ~]$ bg 2 织梦好,好织梦
- [2]- ping linuxidc.com -a > /dev/null &
- [www.linuxidc.com@linux ~]$ jobs
- [1]+ Stopped ping 88181.com -a > /dev/null
- [2]- Running ping linuxidc.com -a > /dev/null &
- [www.linuxidc.com@linux ~]$
- [www.linuxidc.com@linux ~]$ %2
- ping linuxidc.com -a > /dev/null
- #Ctrl+Z
- [2]+ Stopped ping linuxidc.com -a > /dev/null
- [www.linuxidc.com@linux ~]$ jobs
- [1]- Stopped ping 88181.com -a > /dev/null
- [2]+ Stopped ping linuxidc.com -a > /dev/null
- [www.linuxidc.com@linux ~]$
- [www.linuxidc.com@linux ~]$