質問

私は次のことをしようとしています。「マイクロ」から始まるTEMPですべてのTXTファイルを検索し、次の2つの文字列がそれらのいずれかに存在するかどうかを見つけます。 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%"

最初の文字列を含むファイルのリストを取得し、このリストを使用して2番目の文字列を検索します。

他のヒント

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