Я попытался написать пакетный скрипт, который найдет все пути файлов с тем же именем, что и входная строка. прямо сейчас он может найти только первый найденный файл, и я не могу подумать о том, как его перечислить в несколько файлов. Я не очень опытен, и мне нужна помощь.Поиск путей нескольких файлов с тем же именем файла
это часть кода сценария:
:start
cls
echo Enter file name with extension:
set /p filename=
echo Searching...
for %%a in (C D E F G H U W) do (
for /f "tokens=*" %%b in ('dir /s /b "%%a:\%filename%"') do (
set file=%%~nxb
set folderpath=%%~dpb\
::the path of the file without the filename included "C:\folder\folder\"
set fullpath=%%b
::the path of the file with the filename included "C:\folder\folder\file"
goto break
)
)
:notfound
cls
echo Enter file name with extension:
echo %filename%
echo File Not Found!
ping localhost -n 4 >nul
goto start
:break
if "%folderpath:~-1%"=="\" set folderpath=%folderpath:~,-1%
cls
echo ? %filename% found
echo %fullpath1%
echo %fullpath2%
echo %fullpath3%
--- || ---
Я хочу, чтобы скрипт для поиска компьютера и список всех встретившихся файлов с тем же именем, и я хочу, чтобы иметь возможность поставить пути к этим файлам в разные переменные. Например, если readme.txt - это вход, тогда мне нужен список всех путей всех файлов с этим конкретным именем (readme.txt), и я хочу установить переменную для каждого пути, чтобы я мог ее использовать после этого ,
пример:
input:
readme.txt
output:
3 files found
C:\folder\folder\readme.txt
C:\folder\folder\folder\readme.txt
D:\folder\readme.txt
variables:
path1 = C:\folder\folder\readme.txt
path2 = C:\folder\folder\folder\readme.txt
path3 = D:\folder\readme.txt
Благодарим вас за комментарий. Я взял ваш совет и вместо того, чтобы одновременно искать несколько файлов, искать пакетный файл по одному и запускать его на всех функциях, после чего он ищет другой файл и перебирается снова, пока не останется файлов. –