我需要导航到一个我不知道路径的.exe文件
我正在使用dir *.exe/s来查找文件,它可以工作,但是找到后我需要做一张CD来导航此文件夹。
我该怎么做?
使用 dir /s /b *.exe
获取文件名的单行输出,包括完整路径。
将该输出放入变量的最佳方法是for
循环:
for /f "delims=" %%A in ('dir /s /b *.exe') do set "exefile=%%A"
若要仅获取文件的路径,请使用 for
修饰符:
for /f "delims=" %%A in ('dir /s /b *.exe') do set "exepath=%%~dpA"
注意:这适用于批处理文件。要在命令提示符下使用,请仅使用单个%
(%A
而不是%%A
)
如果有多个匹配项,则将为每个匹配项执行 set
命令,从而覆盖变量并最终为您提供最后一个匹配项。
有关进一步说明,请参阅for /?
。
要更改工作目录:cd "%exepath%"
或pushd "%exepath%"
。当然你也可以把这个命令之一直接放在do
后面,而不是set
命令(不创建变量)