popen fgets
时间: 2023-11-19 07:50:41 浏览: 271
如何解决fgets读取popen内容阻塞的问题
5星 · 资源好评率100%
popen 是一个函数,可用于启动另一个进程并打开一个管道来与该进程进行通信。fgets 是一个函数,用于从文件中读取一行数据。
通常,在使用 popen 函数启动另一个进程后,可以使用 fgets 函数从通过管道与该进程通信并获取该进程输出的数据。
例如,以下代码通过 popen 函数启动了一个名为 "ls" 的进程,并使用 fgets 函数从该进程输出的数据中获取每个文件或目录的名称:
```c
#include <stdio.h>
int main() {
FILE *fp;
char path[1035];
fp = popen("ls /etc/", "r");
if (fp == NULL) {
printf("Failed to run command\n");
return 1;
}
while (fgets(path, sizeof(path), fp) != NULL) {
printf("%s", path);
}
pclose(fp);
return 0;
}
```
阅读全文