如果在提示符中键入命令,则命令处理器在当前path中search它,然后(如果未find)在PATH环境variables中列出的path中search它。
那么有没有一种方法可以轻松地知道我的input命令是在哪个path中find的? 这可能是有用的,你的命令可能出现在几个系统path。
具有我的命令参数的batch file被接受为解决scheme。
那么,由于我的名誉不接受自我回答 ,所以这是我find的答案:
我在这里发现了一个提示,在MSDN博客中描述了batch file中的path操作 。 其实,我们创build并调用下面的batch file:
@REM this file is called where.in.PATH.cmd @ECHO %1 @ECHO %~$PATH:1
如果你想find哪个'tf.exe'将被执行,你只需input:
where.in.PATH.cmd tf.exe
输出是:
tf.exe C:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE\TF.exe
即用于执行input的tf.exe的唯一完整path,不太可能在下面的回答中提供的标准命令的输出处。
在Linux环境下,你可以使用which your_binary命令。 对于Windows下的等效项,您可以使用where命令,如本文所述。
WHERE是您在Windows上能find的最接近的东西 ,从2003年开始,它被包含在所有的Windows操作系统中。
你应该看到任何地方的任何访问。 我在这种情况下使用procmon进行debugging。