【发布时间】:2010-09-24 14:51:05
【问题描述】:
execvp() 函数执行作为参数给出的程序。它检查 $PATH 变量以找到程序。我正在写一些东西,我想在调用任何 exec() 函数之前检查是否存在多个程序。最好的方法是什么?
【问题讨论】:
-
您可能不应该仅仅依赖于存在 - 您还需要文件具有执行权限(对您而言)。即使这样也不是万无一失的。如果程序启动#!/bin/non-existent,它不会执行,因为程序不存在。这就是为什么 execlp() 只是依次尝试每个名称的原因,我相信。