微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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.

原文地址:https://www.jb51.cc/bash/386944.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐