dup2

    1热度

    2回答

    我不会说谎。这是一个家庭作业问题。然而,就我而言,宝贝已经没有了。现在,我只是在寻找答案,因为我想 - 我可能会疯了。 该程序的目标是以类似于shell的方式执行命令ps -A | grep (inputstring) | wc -l。所以,我产生了这些流程,让他们彼此等待。最新的过程,曾孙,execlp("ps","ps","-A",NULL),它取代了ps -A过程。在execlp之前,我确定

    0热度

    1回答

    我一直在C编写一个Unix shell,我试图实现输入和输出重定向。我一直在使用Dup2,并且能够将它输出重定向到一个文件,并且我的输入也被正确地重定向。但是,在完成这些之后,如何返回使用Stdin和Stdout? 这些是代码片段我当需要重定向运行: 在: inFile = open(tok.infile, O_RDONLY, 0); inDup = dup2(inFile, STDIN_FIL

    0热度

    1回答

    我想在C中实现多管道,以运行多个命令,如壳。 我已经做了链接列表(在我的代码称为t_launch),它看起来像,如果你键入 “ls | grep的SRC |厕所”: 厕所 - 管 - grep的SRC - 管 - LS 每个PIPE节点包含一个int标签[2]从管道()函数(当然,也出现了一个管()调用为每个管道节点) 现在我试图执行这些命令: int execute_launch_list(t

    0热度

    1回答

    我的代码被粘贴在下面。 我正在尝试使用dup2将我的输出重定向到文件。 如果我用它来重定向它工作正常(如果我删除评论),输出在文件中,而不是在标准输出。例如:ls>测试,导致ls输出测试。 问题是ls,没有>不输出任何东西。如果我尽可能地离开评论输出,尽管没有重定向的能力。 重定向[0]是要么<或>有或全无 重定向[1]该文件的路径重定向到 命令是与所述命令的命令的PICES cstrings的阵

    0热度

    1回答

    一直在使用shell项目。我已经设置了I/O重定向,但是我显然错过了一些东西,因为当用像“ls -al> outfile”这样的行进行测试时,它会在我的桌面上创建outfile,但将其保留为空,并且程序将返回以下错误: ls: >: No such file or directory Error: Failure to wait for child. : Interrupted system

    1热度

    2回答

    我想为GNUNet创建一个远程控制,因此我开始为GNU OS编写一个自制的多线程泛型网络服务器,能够验证用户身份(从system user database )并且能够执行通用的CGI程序/脚本。我从头开始,现在只是一个草稿。但是,一切似乎都很好。 我只是想问一个问题。如您所知,CGI程序/脚本从STDIN中读取POST字符串并将其内容发送到STDOUT。以下是我写的代码的一部分。它似乎工作。 i

    1热度

    1回答

    打印结束印刷,我创建了这个功能打印文件内容: void afficher (char * nomFichier){ if(nomFichier == NULL) printf("Erreur : %s\n",nomFichier); else { char buf[15]; int nb; int fd = open(n

    0热度

    1回答

    我需要fork一个进程,将输出(stdout和stderr)重定向到缓冲区。我的代码似乎适用于大多数二进制文件,但不是全部。例如,我可以使用ls -R/proc /这样一个非常长的“ls”来运行我的代码,并且它工作得很完美。当我运行mke2fs进程时,我的代码不再工作。 如果我在fork中运行mke2fs并等待它,它就能正常工作。现在,如果我添加重定向的东西,我的程序永远不会完成运行。 我写了一个

    0热度

    1回答

    我满足约DUP2和多线程一个很字符串问题,代码是这样的: pipe out, err; int forkpid = fork(); if (forkpid == 0) { dup2(out.writeFd, STDOUT_FILENO); dup2(err.writeFd, STDERR_FILENO); printf("hello\n"); } do {

    0热度

    1回答

    我是unix中的新成员。在下面的代码中,我从命令行“〜$ foo last sort more”传递了三个参数,以便复制“〜$ last | sort | more”。我正在尝试创建一个需要三个参数的程序(现在至少有三个参数)。父母将分叉三个进程。第一个过程将写入管道。第二个进程将读写管道,第三个进程将从管道读取并写入stdout(终端)。第一个进程将执行“最后”,第二个进程将执行“排序”,第三个