使用批处理文件查找文件并返回完整路径

ABA*_*UNT 13 windows directory file batch-file

是否可以创建一个搜索文件名的批处理文件,然后返回其路径,以便我可以在变量中使用它?

Bal*_*i C 16

for /r C:\folder %%a in (*) do if "%%~nxa"=="file.txt" set p=%%~dpnxa
if defined p (
echo %p%
) else (
echo File not found
)
Run Code Online (Sandbox Code Playgroud)

如果找到您搜索的文件,它会将变量设置%p%为文件的完整路径,包括名称和扩展名.

如果您只想要路径(如没有文件的文件夹路径),请set p=%%~dpa改用.

注意:如果有多个具有相同名称的文件,则该变量将设置为找到的最后一个.for循环线后面的脚本也不是必需的,只是为了告诉你是否发现了什么:)

如果要使用该dir命令执行此操作,请使用此命令,同样的规则适用

for /f "tokens=*" %%a in ('dir acad.exe /b /s') do set p=%%a
Run Code Online (Sandbox Code Playgroud)


Deb*_*Deb 5

做这个: -

for /f "delims=" %%F in ('dir /b /s "C:\File.txt" 2^>nul') do set MyVariable=%%F

假设你正在寻找C驾驶File.txt.