【问题标题】:execute script with C++ [duplicate]用 C++ 执行脚本 [重复]
【发布时间】:2013-04-20 13:33:15
【问题描述】:

我想通过一个 c++ 程序执行一个脚本并得到它的输出。目前我在做

system("./script.sh > out.txt");

但我需要一个将输出转换为字符串的命令,例如:

out = system("./script.sh");
printf(out);

执行脚本后我无法读取 out.txt 文件,因为我没有权限。我将我的 c++ 程序部署在其他没有授予我此权限的框架 (boinc) 上。

有人有提示吗? 提前致谢! 费利佩

【问题讨论】:

标签: c++ c linux boinc


【解决方案1】:

您可以使用popen(),然后从popen()打开的管道中获取命令的输出

FILE  *fp;
fp=popen("./script.sh","r");

并获得您的输出。您可以使用fgets()fread() 从管道中读取,就像从文件中读取一样

【讨论】:

    猜你喜欢
    • 2019-04-23
    • 2021-11-10
    • 2020-02-22
    • 2019-07-08
    • 2023-04-07
    • 2019-02-07
    • 1970-01-01
    • 2014-01-09
    • 2016-09-16
    相关资源
    最近更新 更多