我正在开发便携式开发环境,所以我需要找到垃圾箱的路线。我已经尝试过:
for /f "tokens=*" %%a in ('dir mysqld.exe /b /s') do set mysql=%%a
它返回A:\test\mysql-5.7.24-winx64\bin\mysqld.exe
但我只想获取文件夹,像这样A:\test\mysql-5.7.24-winx64\bin\
,我该如何实现?。
使用修饰符(在 中描述for /?
):
for /f "tokens=*" %%a in ('dir mysqld.exe /b /s') do set "mysql=%%~dpa"
echo %mysql%
%%~dpa
返回ð RIVE和p仅ATH。
相同而不使用dir
(因为for /r
可以递归搜索(a)文件):
for /r "c:\startfolder" %%a in (mysqld.exe) do set "mysql=%%~dpa"
"c:\startfolder"
是递归搜索的起点(在当前文件夹及其子文件夹中搜索时可以省略它)
注意:如果有多个匹配文件,变量将保存最后一个发现。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句