有没有办法看到从Windows CLI执行程序的path?

如果在提示符中键入命令,则命令处理器在当前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操作系统中。

哪里

  • 您可以从Sysinternals Suite(Microsoft)下载procmon.exe。
  • 运行Procmon.exe
  • 然后运行你的命令。

你应该看到任何地方的任何访问。 我在这种情况下使用procmon进行debugging。