我希望在不使用system
int ret = system("less -V > /dev/null 2>&1");
if (ret == 0) {
printf("The less executable was found.\n");
}
如果系统上安装了较少的变量,我需要变量ret
为0,但不使用对system
的调用。可以使用exec
或类似的吗?
答案 0 :(得分:2)
您可以使用system("which less")
来确定是否已安装less
。这样可以避免在未安装less
时尝试调用system
。如果您根本不想使用which
,则必须在程序中重新实现getenv
的功能:即,使用PATH
获取/less
变量并尝试将stat
附加到每个路径并在生成的文件上调用$scope.checkedTicketIds
以确定它是否存在且是否可执行。