简单说明
Linux内核通过进程对任务进行管理,在终端界面启动一个进程后,使用Ctrl+Z和Ctrl+C都可以用退出进程,返回到终端界面。区别在于:
- Ctrl+C中断了进程,返回到终端界面。
- Ctrl+Z暂停了进程,返回到终端界面。
如果将终端比作前台,终端背后所看不到的系统比作后台,Ctrl+Z将进程暂停并挂在了后台,使用户可以继续查看和操作前台终端。
实例
-
首先,打开一个进程,这里使用Linux中的vmstat来展示系统资源的使用情况,在终端界面输入vmstat并加上输出间隔时间(以秒为单位),如:vmstat 10(每十秒打印一次)。
此时按下Ctrl+C中断该进程。
操作:
(1)输入vmstat 10
(2)按下Ctrl+C -
使用ps命令查看进程信息,可以看到并没有vmstat所对应的进程信息。
操作:
输入ps -
输入vmstat 10,再次打开该进程。
操作:
输入vmstat -
按下Ctrl+Z,返回到前台。
再次使用ps命令查看进程信息。可以在进程列表中找到对应的vmstat进程。
使用jobs命令查看从该终端启动的任务信息,可得到类似如下展示的输出结果:[1]+ Stopped vmstat 10
其中[1]表示该进程的编号为1。
后面的“+”表示这是最新的进程(也为默认进程),“-”代表第二新的进程,其余不带任何符号。
其次则是该进程的任务状态,Stopped代表该进程已暂停。
最后则是对应的任务进程。
操作:
(1)按下Ctrl+Z
(2)输入ps
(3)输入jobs
扩展
- 已暂停的进程也可以继续运行,可以使用fg命令或者bg命令。
区别:
fg命令将进程恢复到前台进行运行。
bg命令使进程保持在后台运行。
可以通过在后面添加%num来指定对应编号的进程。
如:fg %1或bg %1.
注:若jobs列表只存在唯一一个进程,或者待启动进程为默认进程(即第二个符号为“+”),则可以直接之用命令fg或bg,而无需指定对应的编号。 - 上一条中所包含的bg命令将进程移到后台运行,也可以在进程开始便指定其后台运行,即输入:
job &(job为带启动的任务、进程)
示例:vmstat 10 &
返回的首条结果为:
其中,[1]为对应的编号,1518722为该进程的PID。[1] 1518722
“If I have seen further it is by standing on the shoulders of giants.”