首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从C中的stdout输出系统命令

从C中的stdout输出系统命令,可以使用popen()函数。popen()函数可以创建一个管道,并执行一个子进程,将子进程的标准输出连接到管道。然后,可以使用fread()函数从管道中读取子进程的输出,并将其发送到标准输出。

以下是一个简单的示例代码:

代码语言:c
复制
#include<stdio.h>
#include <stdlib.h>

int main() {
    FILE *fp;
    char path[1035];

    fp = popen("echo $PATH", "r");
    if (fp == NULL) {
        printf("Failed to run command\n" );
        exit(1);
    }

    while (fgets(path, sizeof(path)-1, fp) != NULL) {
        printf("%s", path);
    }

    pclose(fp);

    return 0;
}

在这个示例中,我们使用popen()函数执行echo $PATH命令,并将其标准输出连接到管道。然后,我们使用fgets()函数从管道中读取输出,并将其发送到标准输出。最后,我们使用pclose()函数关闭管道并等待子进程完成。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券