除 PATH 外的 Dos 可执行文件查找

rip*_*234 3 windows lookup command-line

我打开了一个 cmd(Windows 7),然后输入“java.exe”,系统会在 c:\program files\java\jre6\bin 找到可执行文件。

但是,此文件夹不在路径中。还有哪些机制会影响 exe 查找?

Jos*_*hua 14

从 Vista 及更高版本开始,Windows 现在包含一个名为where. 这个程序的功能就像你期望的 Unix 对应程序一样(我很高兴他们添加了它!)

用法:

C:\>where java
C:\Windows\System32\java.exe
Run Code Online (Sandbox Code Playgroud)

更好的where是,它会向您显示它在您的路径中找到的所有可执行文件,因此如果您在 C:\Windows 中也有 java.exe,它将显示\System32\ 下。

编辑

我想我还会为希望在没有第三方工具的情况下使用该功能的 XP 用户提供一个选项。Raymond Chen 在一个 90 字节的“whereis”程序中编写了一个命令脚本。这是一个很好的衬里,可以完成同样的任务!

@for %%e in (%PATHEXT%) do @for %%i in (%1%%e) do @if NOT "%%~$PATH:i"=="" echo %%~$PATH:i
Run Code Online (Sandbox Code Playgroud)

将上述脚本保存在 .bat 或 .cmd 文件中,您可以使用文件名作为参数从命令行启动它。它会像您期望的那样工作!(注意,如果使用脚本版本,请不要使用扩展名,它会为您搜索所有可执行的扩展名)

  • +1 始终“尽可能”地选择本机解决方案:) (2认同)