儿童过程不从管道上阅读,除非父母在dup2之前致电printf
下面的代码分叉了一个子过程,并将Stdout重定向到管道。孩子应该从管道上读取,但没有发生。奇怪的是,如果让父母至少在致电DUP2之前至少打电话给prin…
使用fork(),execlp()和dup2()
我正在编写一个C程序,该程序将运行Linux命令,例如: ls -al | grep "main" | sort 我只是用孩子来做到这一点。 (当我使用父母执行最后一个,但我只…
模拟'<' AC计划运营商
我正在重新创建一个完整的外壳。为此,我必须模拟< 。为此,我必须使用函数 dup2()。 我做了这个,但它不起作用,我不明白为什么: void simple…
管道execvp linux命令从孩子到父进程
我尝试用C语言编写一个程序,该程序在输入中采用简单的Linux命令,例如“ LS /Home”。 此命令在子进程中使用“ ExecVP”执行,并将其发送到要在屏幕…
使用管道在两个程序之间进行交流
我需要主要的配置想要传递给父母,所以我试图使用另一个管道,但是每次插入字符串后立即停止。 因此,主要程序:(编辑) #include #include #include…
使用dup2重定向stdin和stdout
我正在编写自己的自定义外壳,作为我项目的一部分,当该程序读取“<”或“>”从用户输入中的字符需要将stdin和stdout重定向到自定义文件。我…
试图重新实现“ |” c
我正在尝试重新实现管道“ |”操作员。 该程序将执行如下: $ ./exe Infile cmd cmd2 cmd2 cmd3 cmdn Outfile。 首先,我将通过命令从Infile Process …
C++管道,dup2,execlp悬挂
因此,我试图以一种顺序运行3个命令。 ls -l / | grep a | sort -r 但是,我的代码似乎挂起了过程。我知道这通常表明没有手持管道。但是我似乎找不到…
执行输入重定向并捕获命令输出(自定义类 shell 程序)
我正在编写一个自定义 shell,尝试像标准 shell 一样添加对输入、输出重定向和管道的支持。我陷入了无法进行输入重定向的境地,但输出重定向工作正常…
grep 在此代码中永远不会终止(使用 fork、fd)
当我使用“ LS -A | Grep Test”执行此功能时, 它正确打印测试测试。C 但是直到我按CTRL+C退出之前,它永远不会终止。 void executeCMD(char *cmdlin…
无法将 printf 重定向到管道
我想将 printf 的输出重定向到管道,但由于某种原因,它似乎行不通。工作是什么是使用写。 这是我的程序,我的程序只是块 #include #include #include…
子进程之一内的管道未正确关闭
#include #include #include #include #include int funcone(){ int i; char *arr[5] = {"One", "Two", "Three", "Four", "Five"}; for(i = 0; i <= 5…