【发布时间】:2019-09-14 04:13:28
【问题描述】:
我正在 Xcode 中制作一个命令行工具,并且想用我的 C++ 代码调用终端命令。
我发现system() 函数可以运行终端命令。而且我知道我想要的命令在我的终端中工作。但是当我在 Xcode 中使用 system() 调用这些命令时,这些命令的工作方式不同。
例如,我尝试在 Xcode 中调用 brew 命令。
system("brew");
我希望输出与我在终端中输入 brew 时的输出相同:
Example usage:
brew search [TEXT|/REGEX/]
...etc
但 Xcode 中的实际输出是sh: brew: command not found。
为什么system() 的行为与终端不同?我应该使用其他功能吗?
【问题讨论】:
-
/usr/local/bin,其中brew可能不在PATH环境变量中。尝试使用其绝对路径运行它:/usr/local/bin/brew。 -
@cfillion 谢谢这工作!你知道如何将它添加到 XCode 中,这样我就不需要每次都写绝对路径了吗?
-
还有@cfillion,您可以添加您的评论作为答案,以便我可以将其标记为已解决吗? ty