今天咱们谈谈linux系统的shell的父子关系,由于你们对手机都比较熟悉,手机自己也是一个linux主机,因此咱们今天就拿手机来举个例子。linux
首先就是建立一个新的shell,你能够把它理解成一个手机打开了一个软件,可是在linux打开一个“软件”没有那么容易,这就须要用到两种方法。shell
方法一:在CLI提示符用/bin/bash或bash建立一个shell。bash
图1-1函数
能够看到第一个bash的进程号为2022927;第二个bash的进程号为为2023167;这样说也不是特别明显,咱们用ps -forest命令看看rest
图1-2协程
从图1-2中能够直观的看到第二个bash是第一个bash的一个子进程;能够与图1-1的进程作一下对比blog
方法二:在CLI提示符后用(命令;命令;命令;)建立一个shell。进程
图1-3it
从图1-3咱们能够看到返回了一个1,则证实咱们的子shell是成功的。推出shell也是很是容易的输入命令exit就能够了。后台
当Linux运行着一个shell是你也能够说:“运行着一个进程",因此”进程“=”shell“。
shell的用法:
一:后台
图1-4
图1-4咱们在子shell下运行了一个sleep并将其放入了后台,他得进程号为2026627咱们如今退出此进程如图1-5。
图1-5
二:协程
由一个或多个语句块组成。它负责完成某项特定任务,并且相较于其余代码,具有相对的独立性。我能够将子例程理解为一个函数。
例如图1-6,用coproc建立了一个协程zz,jobs能够查看后台做业。