Можно ли искать строку в файле и отображать имя файла как переменную в пакете - PullRequest
0 голосов
/ 10 января 2019

Я пытаюсь искать файлы в виде пакета, например, когда вы в папке, и вы можете ввести то, что вы ищете, и он будет отображать имена файлов с этим жало в этом файле, но я хочу использовать его в качестве переменной в партия

Вроде как

 @echo off
:Start  
Title Details Search

set /P "result1=Number1" 

for /f %%i in ('findstr /i "%result%" "C:\Users\%USERNAME%\Desktop\Folder\*"') do @echo %result1% found in %%~nxi

set /P "result2=Number2: " 

for /f %%i in ('findstr /i "%result2%" "C:\Users\%USERNAME%\Desktop\Folder\*"') do @echo %result2% found in %%~nxi

Pause

Это не позволит мне сделать больше, чем один, где тот, что ниже, прекрасно работает с особой благодарностью Герхарду Барнарду, но только один

@echo off
:Start  
Title Details Search

set /P "result=what would you want to search today?: " 

for /f %%i in ('findstr /i "%result%" "C:\Users\%USERNAME%\Desktop\Folder\*"') do @echo %result% found in %%~nxi
Pause

Результат, который я пытаюсь получить, - что-то вроде

Боб 543-434-4324 Том 234-253-2463

Где имя - это имя файла, а число - это то, что я набрал. Так что, если я введу его в число, оно будет отображаться рядом с именем файла, который он нашел Примечание: это не действительные числа, я просто набрал случайные числа

1 Ответ

0 голосов
/ 10 января 2019

Так что согласно вашему изменению в вопросе, поиск нескольких номеров. Вы должны добавить свой текст, разделенный пробелом в вашем поиске. т.е. 09122 123441 881992

@echo off
:Start  
Title Details Search

set /P "result=what would you want to search today?: "
for %%a in (%result%) do (
    for /f %%i in ('findstr /i "%%a" "C:\Users\%USERNAME%\Desktop\Folder\*.rtf"') do @echo %%~nxi %%a
)
...