自建shell如何实现pipe使得一个进程的输出是另一个进程的输入

大作业是实现一个自建的shell,其中一个任务是在自建shell中实现以下命令:ex ./a | ex ./b
其中要让a文件的输出作为b文件的输入,比如./a输出how are you,./b输出Hi, ,且./b将接收到的args[1]放在Hi的后面,那么ex ./a | ex ./b 的输出就应该是Hi, how are you。目前我了解了pipe和fork等函数,但不知道如何才能运用这些函数搭建起这个功能,希望大家能不吝赐教,谢谢!

2个回答

楼主了解一下标准输入输出重定向,c++里的cin、cout是标准输入,在shell里可以用>,<重定义到另一个程序的标准输入输出,即将一个程序的输出变成另一个程序的输入。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问