这很容易编写一个可以运行的简单脚本类似于 unix 中的 which(1) 命令,它沿着 PATH 搜索给定的命令。不幸的是,创建进程函数并不是那么简单,所以这种类型的脚本不能给出准确的结果:CreateProcess 查找 PATH 中没有的多个目录,查找具有 PATHEXT 中列出的所有扩展名的文件等等。更糟糕的是,谁知道在未来的 Windows 版本中可能会添加什么?
无论如何,我的问题是:是否存在适用于 Windows 的强大、准确的 which(1) 等效项,它始终告诉您 CreateProcess 会找到什么文件?
答案1
我用gnuwin32 哪个:-)
GnuWin32 端口在以下目录序列中搜索匹配的文件:
* The current directory. * The directories that are listed in the PATH environment variable