浅谈命令解释程序-概述 linux

一、

       命令解释程序(shell)是一个用来对命令进行解释的进程。

       命令解释程序工作流程:命令解释程序从标准输入读入命令行,并创建一个子进程来之行命令,然后父进程要在读入另一条命令之前,等待这个子进程执行完毕。实际的命令解释程序要负责处理进程流水线和重定向,以及前台进程组、后台进程组和信号。

  我们可以给出一个设计命令解释程序的简单框架。

  1、从标准输入中读入命令行参数。

  2、产生子进程。

       3、在子进程中利用makeargv函数将命令行参数进行分析。

  4、调用execvp()函数来执行上一步分析出来的命令。

二、

  当自己编写一个命令程序时,肯定会使用到makeargv,如果当前的命令程序会调用新的程序时,会使用上述的框架,产生一个子进程然后使用execvp()函数来执行新的程序,或者使用System()函数(它相当于,残生了一个子进程,让子进程用execl执行命令)。  

原文地址:https://www.cnblogs.com/lgz24/p/1777064.html