- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我需要创建一个 C 程序来使用 exec 和未命名管道模拟此命令:
ls | sort | wc -l
但是我该怎么做呢?刚开始学 pipe ,试得很烂
int main( int argc, char** argv )
{
int fd1[2], fd2[2],fd3[2], pid;
createPipe(fd1);
createPipe(fd2);
createPipe(fd3);
pid=babyMaker();
if (pid == 0)
{
dup2(fd2[0],0);
dup2(fd3[1],1);
execlp("wc","wc","-l",NULL);
}
pid=babyMaker();
if (pid == 0)
{
dup2(fd2[1], 1);
dup2(fd1[0], STDIN_FILENO);
execlp("sort", "sort", NULL);
}
pid=babyMaker();
if (pid == 0)
{
dup2(fd1[1], 1);
execlp("ls", "ls", "-la", NULL);
}
char string[BUFFER_SIZE];
int bytesReaded=read(fd3[0],string,BUFFER_SIZE);
string[bytesReaded-1]=0;
printf("%s\n",string);
wait(NULL);
return 0;
}
编辑:添加了我的代码
最佳答案
您需要使用以下方法关闭每个操作中未使用的文件描述符: 关闭(fd[0]);
关于c - 模拟 ls | 的 C 程序中的管道损坏 |排序 | wc -l,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36390626/
我有以下疑问。 wc -m 和 wc -c 总是给出相同的输出。我也尝试使用 float ,但两个命令的输出相同。 cat test | wc -m 541 cat test | wc -c
我正在尝试找出两者之间的区别 ps | wc 和 ps r | wc 最佳答案 在 Linux 中,| 管道字符将一个命令的输出发出到另一个命令的输入。在这种情况下,ps 输出将发送到 wc。因此,这
我正在编写一个 shell,目前正在执行管道进程。我能够运行 "ls -l | wc",但是当运行 "ls -l|wc" 时,进程失败。 我曾尝试使用 gdb 进行调试,但无法对其进行任何调试,因为它
这两个命令是$(git ls-files -s | wc -l)吗?和 $(git ls-files -s >out && wc -l out && wc -l out && wc -l <out
这个问题在这里已经有了答案: How can I use a file in a command and redirect output to the same file without trunc
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许在 Stack Overflow 上提出有关通用计算硬件和软件的问题。您可以编辑问题,使其成为
谁能告诉我这是怎么回事?我仍然是 fork 新手。计算机执行第一个和第二个,但第三个即 wc 不起作用。非常需要帮助。终端返回多个子进程完成但没有wc。 pid_t son; int i; for (
我想在不使用wc的临时文件的情况下检查某个文件的行数。我尝试使用类似这样的东西:var=${wc -l a.txt} 或 wc -l a.txt |读取行 但两者都不起作用。 最佳答案 存储命令输出的
那一行是什么意思? ^-...------ | wc ... 它是 Bash 脚本的一部分。 最佳答案 试着写: ls -l | grep ^.......... | wc -l ls -l 的输出将
例如: myCleanVar=$( wc -l < myFile ) myDirtVar=$( wc -l myFile ) echo $myCleanVar 9 echo $myDirtVar 9
我想使用来自“wc”的行作为变量。例如: echo 'foo bar' > file.txt echo 'blah blah blah' >> file.txt wc file.txt 2 5 23
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
这个问题在这里已经有了答案: How can I use a file in a command and redirect output to the same file without trunc
我有一个包含未压缩文件和 gzip 文件的目录,我想在此目录上运行 wc -l。 wc 将为压缩文件提供一个不准确的行计数值(因为它似乎计算文件的 gzip 版本中的换行符)。有没有一种方法可以创建类
这个问题在这里已经有了答案: Whats is the behaviour of the "wc" command? (2 个答案) 关闭 6 年前。 我是 Linux/Unix 世界的新手,但发现
指定显示 .c 中代码行数的命令/命令集和 .h当前目录中的文件,按字母顺序显示每个文件,后跟:以及文件中的行数,最后是代码行数。 . 可能显示的示例是: main.c: 202 util.c: 12
我正在尝试运行这个脚本: #!/bin/sh cd $1 for i in */*.$2 do if [ 'wc –c $i' -gt $3 ] then chmod o-r
当我提交大量更改(数百兆字节)时,即使 checkin 确实通过,客户端也会超时。 当我右键单击 WC 并显示日志时,TSVN 显示即使 checkin 实际发生,WC 修订版也不会更新。 我已经尝试
我有几个从旧存储库中 check out 的工作副本。 旧存储库现在合并为一个新存储库,因此存储库名称和新存储库内的位置已更改。 现在我想将这些工作副本重新定位到新的存储库中的新位置。 使用 Tort
在 iOS 和 iWatch 设备之间建立连接,xCode 写入 [WC] WCSession 对应应用程序未安装。 经过大量研究,我找到了一个解决方案,也许它会对某人有所帮助。 - Check yo
我是一名优秀的程序员,十分优秀!