【问题标题】:How to redirect output from reading a bash script in c++?如何从读取 C++ 中的 bash 脚本重定向输出?
【发布时间】:2011-10-09 10:14:51
【问题描述】:

我知道函数:

system("myfile.sh")

执行一个 bash 脚本。 好的,但现在我想将输出重定向到我的程序以确保读取。 例如脚本 date.sh 给了我系统的日期,我想用 std::cout

【问题讨论】:

标签: c++ bash redirect stdout


【解决方案1】:

使用popen 代替system

popen 函数会给你一个FILE *,你可以从中读取。

FILE *script = popen("myfile.sh", "r");
while (fgets(line, LENGTH, script)) {
    /* ... */
}
pclose(script);

【讨论】:

  • 使用这种方法,我可以轻松无误地将输出发送到我的网络上的客户端吗?谢谢
  • @user840718 使用此方法,您可以捕获“myfile.sh”的输出。我不知道您网络上的客户端 :-)
猜你喜欢
  • 2014-11-17
  • 1970-01-01
  • 2020-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-29
相关资源
最近更新 更多