繁体   English   中英

Linux | C语言中的Shell实现| 输入重定向不显示

[英]Linux | Shell implementation in C | Input redirection does not display

我正在C中实现Shell,并且在实现重定向操作时,我看到输出重定向工作正常,但是输入重定向操作却什么也没做。 (在标准输出中没有显示)

COMMAND-> wc < out.txt
Child 12878 died 0x008B

COMMAND->

[我的提示符是COMMAND->

当我打印孩子死亡时的状态时,它的值为0x8B。 这表示什么吗?

我关注了这篇文章,重定向实现的核心部分与此处建议的类似。 在C中实现Shell并需要帮助来处理输入/输出重定向

这是输入重定向发生的要点:

in = open(file_name, O_RDONLY);
dup2(in,0);
close(in);
execvp("wc",args);

(由于这是一项现场作业,因此我无法发布我的全部代码,我可能最终会陷入MOSS)

execvp中传递的指针为NULL ,因此为SIGSEGV

输入的命令的后端处理(基于管道和重定向将它们隔离)有错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM