C标准库提供函数systempopen来运行命令。但是,是否有一种可移植的方式来检测命令是否存在?

最佳答案

对于POSIX系统,我发现它可以很好地工作(在此示例中,我正在检查avconv):

if (system("which avconv > /dev/null 2>&1")) {
    // Command doesn't exist...
} else {
    // Command does exist, do something with it...
}

重定向到/dev/null只是为了避免将任何内容打印到stdout。它仅依赖which命令的退出值。

关于c++ - 找出命令是否存在的便携式方法(C/C++),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/890894/

10-08 22:30
查看更多