|
进行工作管理的行为中,其实每个工作都是目前 bash 的子进程,彼此之间是有相关性的。我们无法以 job control 的方式由 tty1 的环境去管理 tty2 的 bash
为什么会有工作管理?系统有多个 tty 使用,这样切换很麻烦,还有之前讲解的 /etc/security/limits.conf(第 13 章)可以设置同时登录的联机数量,假设只允许一个呢?
假设我们只有一个终端机接口,因此在可以出现提示字符让你操作的环境称为 前景 foreground,其他工作可以放入 背景 background 去暂停或运行。要注意的是:放入背景的工作在运行时,不能与使用者互动。比如 vim 不能再背景里面执行(running)的,因为你没有输入数据它就不会运行。而且放入背景的工作是不可以使用 ctrl+c 来终止的
进行 bash 的 job control 必须要注意的限制是:
这些工作所触发的进程必须来自于你的 shell 的子进程(只管理自己的 bash)
前景 foreground:你可以控制与下达指令的环境
背景:可以自动运行的工作,你无法使用 ctrl + c 终止它,可以使用 bg、fg 呼叫该工作
背景中执行的进程不能等待 terminal/shell 的输入(input)
|
|