程序在管道上卡住(EXEC%ls grep排序)

问题描述我正在尝试编写一个程序,该程序执行以下命令,使用管道并接受两个参数DIR(目录)和arg(文件类型,示例:jpg),将一个命令的输出连接到下一个命令的输入。ls目录-Lar|grep参数|排序代码如下:intmain(intargc,char*argv[]){if(arg

发布:2022-10-16 标签:linuxpipecforkdup2


玩具外壳管道不正确

问题描述我不会撒谎.这是一道作业题.然而,就我而言,这些点都不见了,宝贝不见了.现在,我只是在寻找答案,因为我-认为-我可能疯了.I'mnotgoingtolie.Thisisahomeworkquestion.However,asfarasI'mconcerned,thepoi

发布:2022-10-16 标签:processc++shelldup2


使用 dup 后恢复标准输出

问题描述使用fork我创建了一个孩子,在孩子中我使用execl执行ls命令.为了将输出发送给父级,我使用了pipe和dup.然后父级打印输出.该代码给出了预期的输出,但是当我尝试恢复最初保存在stdout_holder中的stdout时,终端上没有打印任何内容(当我使用print

发布:2022-10-16 标签:cstdoutdup2


popen2() 在 c 中如何工作?

问题描述我正在尝试使用管道、叉和dup在我的程序中执行md5sume命令.我发现sum代码成功运行,但我无法理解某些代码行.这是我的代码:imtryingtoexecutemd5sumecommandinmyprogrammusingpipe,forkanddup.ifounds

发布:2022-10-16 标签:pipecforkdup2


僵尸进程和叉子

问题描述我有这样的代码...ihaveacodelikethis...c=fork();if(c==0){close(fd[READ]);if(dup2(fd[WRITE],STDOUT_FILENO)!=-1)execlp("ssh","ssh",host,"ls",NULL)

发布:2022-10-16 标签:c++forkzombie-processdup2


使用fork()在C中用餐的哲学家

问题描述前一段时间,我使用pthread为餐饮哲学家问题"编写了一个C程序,现在正尝试将其更改为使用fork().这是我已经通过的演讲的练习.但是一个朋友向我求助,我似乎无法自己解决,这让我发疯了!IwroteaCprogramfortheDiningPhilosophersPr

发布:2022-10-16 标签:csemaphoreforkdup2dining-philosopher


当您对与dup2()复制的管道文件描述符调用close()时,会发生什么情况?

问题描述我对Unix和C编程中的文件描述符有疑问.IhaveaquestionregardingfiledescriptorsinUnixandCprogramming.假设我使用pipe(fd)来获取文件描述符3和4的管道端,3连接到读取端,4连接到写入端.Let'ssayIu

发布:2022-10-16 标签:pipecfile-descriptordup2


复制,但仍使用stdout

问题描述使用dup2(或fcntl)是否可以执行一些魔术操作,以便将stdout重定向到文件(即,写入描述符1的所有内容都将进入文件),但是如果我使用了一些其他机制,它将去终端输出吗?太松散了:IstheresomemagicIcandowithdup2(orfcntl),sot

发布:2022-10-16 标签:fileunixcdup2


使用execvp在输出重定向期间接收错误代码

问题描述我正在尝试将输出从ls重定向到文件,该文件在C语言中创建的外壳中.我键入:Iamtryingtoredirecttheoutputfromlstoafile,inashellIcreatedinC.Itypein:ls>junk我得到的是:ls:cannotaccess>

发布:2022-10-16 标签:fopencexecio-redirectiondup2


在fork()之后将stdout重定向到文件

问题描述我正在一个简单的shell上工作,但是现在我只是想了解重定向.我只是对ls命令进行硬编码,现在尝试将其写入文件.当前,ls运行,并且创建了输出文件,但是输出仍然转到stdout,并且该文件为空白.我对为什么感到困惑.预先感谢.I'mworkingonasimpleshel

发布:2022-10-16 标签:redirectfileforkstdoutdup2