popen() 函数怎么用
时间: 2023-09-25 21:13:23 浏览: 71
popen使用方法示例
popen() 函数用于创建一个管道并执行一个命令,它的原型为:
```c
FILE *popen(const char *command, const char *type);
```
其中,`command` 参数是要执行的命令,`type` 参数是指示管道的读写方式,可以是 `"r"` 或 `"w"`。
下面是一个简单的例子,展示了如何使用 popen() 函数执行一个命令并读取它的输出:
```c
#include <stdio.h>
int main() {
FILE *fp;
char buffer[1024];
fp = popen("ls -l", "r");
if (fp == NULL) {
printf("Failed to execute command.\n");
return -1;
}
while (fgets(buffer, sizeof(buffer), fp) != NULL) {
printf("%s", buffer);
}
pclose(fp);
return 0;
}
```
在上面的例子中,我们使用 popen() 函数执行了 `ls -l` 命令,并通过管道读取了它的输出。读取到的内容存储在 `buffer` 数组中,并使用 `printf()` 函数输出到屏幕上。
需要注意的是,使用 popen() 函数执行命令时,应该避免使用用户输入的数据作为命令参数,以免发生安全问题。
阅读全文