红联Linux门户
Linux帮助

用各种C函数实现一个简单的交互式Shell

发布时间:2010-05-29 02:22:09来源:红联作者:夜的七弦
用讲过的各种C函数实现一个简单的交互式Shell,要求:

1、给出提示符,让用户输入一行命令,识别程序名和参数并调用适当的exec函数执行程序,待执行完成后再次给出提示符。

2、识别和处理以下符号:

•简单的标准输入输出重定向(<和>):仿照例 30.5 “wrapper”,先dup2然后exec。

•管道(|):Shell进程先调用pipe创建一对管道描述符,然后fork出两个子进程,一个子进程关闭读端,调用dup2把写端赋给标准输出,另一个子进程关闭写端,调用dup2把读端赋给标准输入,两个子进程分别调用exec执行程序,而Shell进程把管道的两端都关闭,调用wait等待两个子进程终止。

你的程序应该可以处理以下命令:

○ls△-l△-R○>○file1○
○cat○<○file1○|○wc△-c○>○file1○
○表示零个或多个空格,△表示一个或多个空格
文章评论

共有 7 条评论

  1. xinganlanlv 于 2010-06-06 17:05:36发表:

    学习!

  2. 夜的七弦 于 2010-06-06 01:43:56发表:

    {:2_93:}

  3. 夜的七弦 于 2010-06-06 01:43:50发表:

    {:2_91:}

  4. zhgyxj_85 于 2010-05-29 22:53:02发表:

    刚开始研究shell,学习中!

  5. zguangyu0000 于 2010-05-29 14:35:09发表:

    好,开始研究这个,成功时候会发贴通知:-)

  6. shenhao0129 于 2010-05-29 09:29:24发表:

    这个有空可以研究下,呵呵

  7. bolsdog 于 2010-05-29 08:21:58发表:

    学习下