zoukankan      html  css  js  c++  java
  • myshell案例

    shell

    用讲过的各种C函数实现一个简单的交互式Shell,要求:
    1、给出提示符,让用户输入一行命令,识别程序名和参数并调用适当的exec函数执行程序,待执行完成后再次给出提出符
    2、识别和处理以下符号:
      简单的标准输入输出重定向:仿照例 “wrapper”,先dup2然后exec。管道(|):Shell进程先调用pipe创建一对管道描述符,然后fork出两个子进程,一个子进程关闭读端,调用dup2把写端赋给标准输出,另一个子进程关闭写端,调用dup2把读端赋给标准输入,两个子进程分别调用exec执行程序,而Shell进程把管道的两端都关闭,调用wait等待两个子进程终止。
    你的程序应该可以处理以下命令:
    ○ls△-l△-R○>○file1○
    ○cat○<○file1○|○wc△-c○>○file1○
    ○表示零个或多个空格,△表示一个或多个空格


    项目4步走

    1.实现加载普通命令

    2.实现重定向的功能

    3.实现管道(进程数是管道数加一)

    4.实现多重管道支持

    四步尽量低耦合。

  • 相关阅读:
    python yield 理解
    创建loop设备
    git 添加submodule 以及更名
    用了linux 这么久,终于发现一个需要硬连接的地方
    gdb 查看内存
    att 汇编 helloworld
    ln 创建连接和mount -bind用法
    区间DP
    数位DP
    VS反汇编分析
  • 原文地址:https://www.cnblogs.com/rainbow1122/p/7827355.html
Copyright © 2011-2022 走看看