Файл летучей мыши, который FindStr String1 и String2

StackOverflow https://stackoverflow.com/questions/19840724

  •  29-07-2022
  •  | 
  •  

Вопрос

Я пытаюсь сделать следующее: Поиск по всем файлу TXT в Temp, который начинается с «Micro», и обнаружил, существуют ли следующие две строки в любой из них. Мне нужно найти обе строки в 1 файле.

В настоящее время у меня есть:enter code here

@echo off
cd C:\Users\ADMINI~1\AppData\Local\Temp
findstr /N /C:"action: Uninstall" /C:"Exit code: 0x0, restarting: No" Micro*.log >results.txt
if %errorlevel%==1 (
robocopy C:\Users\ADMINI~1\AppData\Local\Temp C:\Users\Administrator\Desktop results.txt
) else (
echo matches found
)

Но это использует или. Я обнаружил, что мне нужно использовать.* Для и, но следующее просто не работает:

findstr /N /C:"action: Uninstall".*/C:"Exit code: 0x0, restarting: No" Micro*.log

Не уверен, что я делаю не так. :/

Ура, Джери

Это было полезно?

Решение 2

set "string1=action: Uninstall"
set "string2=Exit code: 0x0, restarting: No"
set "files=C:\Users\ADMINI~1\AppData\Local\Temp\Micro*.log"

findstr /m /c:"%string1%" "%files%" | findstr /f:/ /m /c:"%string2%"

Получите список файлов, которые содержат первую строку, и используйте этот список для поиска второй строки.

Другие советы

for /F "delims=" %%a in ('findstr /M /C:"action: Uninstall" Micro*.log') do (
   findstr /N /C:"Exit code: 0x0, restarting: No" "%%a"
)
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top