我正在寻找下载适用于 Windows XP 的 where.exe 工具的链接。看起来此工具应该包含在 Windows 2000 资源工具包中,但我找不到下载此资源工具包的任何链接。我还检查了Windows Server 2003 资源工具包工具和Windows XP Service Pack 2 支持工具但根据内容列表,它们都没有 where.exe。
答案1
经过大量 Google 搜索后,我发现 where.exe 的所有版本都可用,如下所示
对于 Windows 2000,
请在 dllexedown.com 上选择“Windows 2003 32bit sp2 SE”(网址如下)对于 Windows XP-7,
请从以下相同的 URL 选择匹配的下载:
http://dllexedown.com/bbs/search.php?sfl=wr_subject&sop=and&mininum=0&maxnum=10000&stx=where.exe
where /?
告诉您需要知道的一切。
下载的 where.exe 可以放在 中的任何位置%path%
。如果您将其下载并N:\some_folder
添加N:\some_folder
到path
,如下所示:N:\some_folder\>path %cd%;%path%
Enter
start /max cmd /k
%path%
使用 new来“生成”一个窗口where.exe
用鼠标抓住“/max”窗口,它的高度就会缩小到正常高度!但是,如果这样做:按住 ALT,点击空格键,释放 ALT,点击“m”,点击箭头一次或多次:[ENT]:那么新生成的“/max”窗口将保持“最大”。
使用where.exe
N:\some_folder
结果%path%
(通过 echo %path% 显示)仅适用于执行指定路径 %cd%;%path% 命令的 CMD 窗口 - 以及在设置新的 %path% 后从同一 CMD 窗口“生成”的任何其他 CMD 窗口。我喜欢像这样“生成”另一个 CMD 窗口:
start /max cmd /k
因为生成的大窗口可以很好地显示诸如 VDE 编辑器(类似于 WordStar)或 Nano 之类的控制台应用程序(免费软件)。在创建新的 CMD 之前,我首先将 CMD 字体设置为 Lucida Console 或 (Win 7) Consolas 22,将缓冲区大小设置为 999,然后勾选“快速编辑模式”。
答案2
@echo off
setlocal enabledelayedexpansion
set var_a=%1
call :sub %var_a%
if exist %var_b% goto exit
for %%i in ( .com .exe .cmd .bat) do (
call :sub %var_a%%%i
if exist !var_b! goto exit
)
echo INFO: could not find files for the given pattern(s) 1>&2
set "var_a="
set "var_b="
exit /b 1
:sub
set var_b=%~$PATH:1
goto :EOF
:exit
echo %var_b%
set "var_a="
set "var_b="
exit /b 0
编辑:
使用这个简单的代码,您可以创建自定义函数“在哪里”您正在寻找可执行文件(.com.exe.bat)在环境变量中列出的目录中PATH
。
- 创建一个名为查找文件
- 插入上述代码并保存文件。
(您可以在 Windows 中保存此文件,PATH
以便从任何地方运行该命令)
要使用该命令:
C:\>whereis notepad
结果:
C:\Windows\System32\notepad.exe
答案3
where.exe
以前是包含在 Windows 资源工具包中,但在添加到 Windows Server 2003(操作系统)后已被删除。它也是 Visual Studio SDK 的一部分。
答案4
我喜欢 Claus 建议的“whereis.bat”解决方案。
有一次,我遇到了一个问题,当时您要查找的文件中含有空格。例如:
whereis.bat "my test.bat"
结果是:
INFO: could not find files for the given pattern(s)
为了解决这个问题,我在批处理文件中这一行的 %var_b% 周围添加了引号:
if exist "%var_b%" goto exit
然后我得到了我期望的输出:
C:\Windows\System32\my test.bat