当前位置: 技术问答>linux和unix
编一个模拟shell实现的程序,怎么实现输入输出重定向?谢谢
来源: 互联网 发布时间:2015-03-16
本文导语: 期末考试作业unix高级编程,让模拟一个shell 实现一些功能,想问一下:输出/输入重定向是要人为地控制,还是有系统函数或者是系统调用可以直接用啊,比如说如果只是ls命令,可以先fork一个子进程,然后execlp(参数...
期末考试作业unix高级编程,让模拟一个shell
实现一些功能,想问一下:输出/输入重定向是要人为地控制,还是有系统函数或者是系统调用可以直接用啊,比如说如果只是ls命令,可以先fork一个子进程,然后execlp(参数)就可以完成,但是如果要实现输入输出重定向,如ls –a >a.out这个命令,输出结果重定向到a.out是我们自己创建一个文件将ls结果写进去
还是说有函数就可以完成这样的功能,只需给他参数就行了呢?如果有,请帮忙说一下,谢谢了。
实现一些功能,想问一下:输出/输入重定向是要人为地控制,还是有系统函数或者是系统调用可以直接用啊,比如说如果只是ls命令,可以先fork一个子进程,然后execlp(参数)就可以完成,但是如果要实现输入输出重定向,如ls –a >a.out这个命令,输出结果重定向到a.out是我们自己创建一个文件将ls结果写进去
还是说有函数就可以完成这样的功能,只需给他参数就行了呢?如果有,请帮忙说一下,谢谢了。
|
函数可以完成。
参考:
http://www.linuxeden.com/edu/doctext.php?docid=2756
参考:
http://www.linuxeden.com/edu/doctext.php?docid=2756
|
《边学边干-linux内核指导》有一章是做一个简单的shell,可以参考他的源代码。