Linux Shell 命令解释步骤程序实现 Linux Shell 命令解释是 Linux 操作系统中最基本也是最重要的一部分,它负责处理用户与操作系统之间的交互动作,并且给出相应的操作系统的输出结果。 Shell 基本上是一个命令解释器,类似于 DOS 下的 command.com。它接收用户命令,然后调用相应的功能处理程序。 本文将详细讲解 Linux Shell 命令解释步骤的实现过程,包括打印提示符、得到命令行、解析命令、查找文件、准备参数和执行命令等步骤。 打印提示符 在 Linux Shell 中,打印提示符是 Shell 解释命令的第一步。 Shell 会将当前工作目录的绝对路径名和符号“->$”一并作为命令提示符。 得到命令行 为了得到命令行,Shell 执行一个阻塞读操作,让执行 Shell 的进程进入睡眠状态,直到用户键入一个命令行作为对提示符的响应。 解析命令 解析命令是 Shell 解释命令的第三步。在这个步骤中,解析程序从命令行的左边开始扫描命令行,直到遇到第一个空白字符。第一个单词是命令的名称,而后面的则是命令参数。 查找文件 Shell 为每个用户提供了一组环境变量,这些变量定义在用户的 .login 文件中。其中 PATH 环境变量是一个有序的绝对路径列表,它指明了 Shell 应该在什么地方寻找命令文件。如果在任何指定的目录中都没有找到与命令同名的文件,那么 Shell 将提示用户无法找到命令。 准备参数 在本实验中,将输入的命令行解析到数组 Real_Command 中,Real_Command[0] 代表命令名字,其它位置存放的是参数。 执行命令 Shell 需要执行指定文件中的可执行程序,并保护原始进程不被破坏。Shell 通过采用系统调用 fork()、execv() 和 wait() 使用多进程来达到这个目的。 通过编写 Shell 解释命令的步骤的程序,我们知道了操作系统是如何和用户进行交互的,进一步理解了 Shell 作为解释程序的含义。
剩余7页未读,继续阅读
- Micca_Xx2021-10-11确实能运行成功,但下载分数有点过高,,
- nygfw2013-11-11还不错。虽然不是我想的那种,但是代码也很值得参考。。
- 粉丝: 2
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助