红联Linux门户
Linux帮助

急求!!!用c编写一个简单的shell程序

发布时间:2008-05-14 16:03:54来源:红联作者:pagchen
编写一个简单的shell程序,要求如下:
一:这个shell必须支持以下内部命令:
1.cd--把当前目录改变为,如果没有参数,则显示当前目录。如果该目录不存在,则给出错误提示。这个命令可以用来改变PWD环境变量。
2.clr--清屏。
3.dir--列出目录的内容。
4.environ--列出所有的环境变量。
5.echo--在屏幕上显示并换行。
6.help--显示用户手册,并且使用more命令过滤。
7.pause--停止shell直到按下回车。
8.quit--退出shell。
9.shell的环境变量应该包含shell=/myshell,其中/myshell是可执行程序shell的完整路径。
二:其他的命令行被解释为程序调用,,shell创建并执行这个程序,并作为自己的子进程,程序的环境变量必需包含以下条目:
parent=/myshell,
三:shell必须能够从文件中提取命令行输入,例如shell使用以下命令行被调用:
programname arg1 arg2 outputfile
四:shell必须支持i/o重定向,stdin和stdout或其中之一。例如命令行为
programname arg1 arg2 outputfile
使用arg1和arg2执行程序programname,输入文件流被替换为inputfile,输出文件流被替换为outputfile。
stdout重定向应该支持以下内部命令:dir,environ,echo和help。
使用输出重定向是,如果重定向字符是>,则创建输出文件,如果存在则覆盖之;如果重定向字符为 >>则也会创建输出文件,如果存在则添加到文件 尾。
五:shell必需支持后台程序执行。如果在命令行后面添加字符&,在加载完程序后需要立刻返回命令行提示符。
六:命令行提示符必需包含当前路径。

请高手指教,最好能给出完整的代码,如果各位高手没时间全部做完,请务必给出第二。三。四。五。条的解决方法。

本人邮箱pagchen@163.com
在此先谢谢各位了!!!急盼佳音!!!
文章评论

共有 3 条评论

  1. yxw030826 于 2009-07-31 21:51:51发表:

    老师布置的作业吧

  2. gongji110 于 2008-05-18 12:27:54发表:

    建议去看《鸟哥的linux私房菜》里面有这些编程!

  3. neverthesame 于 2008-05-17 22:47:35发表:

    建议去看一看LINUX的内核源代码。