CMake的execute_process和任意shell脚本

CMake的execute_process命令似乎只允许你执行一个进程 – 而不是你可以提供命令shell的任意一行.问题是,我想使用管道,文件描述符重定向等 – 这似乎是不可能的.替代方案对我来说非常痛苦(我认为)……

我该怎么办?

PS – CMake 2.8和3.x答案很有趣.

你可以执行任何shell脚本 – 只需用字符串中的shell脚本执行你的shell(例如bash),例如:
execute_process(COMMAND bash "-c" "echo -n hello | sed 's/hello/world/;'" OUTPUT_VARIABLE FOO)

将导致FOO包含世界.

当然,你需要谨慎地逃避引号和反斜杠.还要记住,运行bash只适用于有bash的平台 – 例如不是Windows.

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...