Suche nach Inhalt in einer Datei
Hallo Community
Ich möchte folgenden Skript ausführen, leider funktioniert dieser nicht.
Ausgangslage ist folgende: Ich möchte im messages.log nach EFI partition capacity is suchen aber diese Suche soll nur erfolgen, wenn FDE EFI Partition Fress Space Check nicht vorhanden ist.
Die Ausgabe funktioniert nicht und ich erhalte auch einen Fehler "<" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
@echo off
setlocal enabledelayedexpansion
set "suchString=EFI partition capacity is"
set "dateiPfad=C:\Program Files (x86)\Abc\logs\messages.log"
set "zielPfad=C:\Temp\messages-output.txt"
set "failedString=FDE - FAILED EFI Partition Free Space check"
for /f "delims=" %%i in ('type "%dateiPfad%" ^| find "%suchString%"') do (
echo %%i | findstr "%failedString%" >nul
if not errorlevel 1 (
echo Bei Computer %Computername% String gefunden in Zeile: %%i >>"%zielPfad%"
)
)
endlocal
was ist hier falsch?
Ich möchte folgenden Skript ausführen, leider funktioniert dieser nicht.
Ausgangslage ist folgende: Ich möchte im messages.log nach EFI partition capacity is suchen aber diese Suche soll nur erfolgen, wenn FDE EFI Partition Fress Space Check nicht vorhanden ist.
Die Ausgabe funktioniert nicht und ich erhalte auch einen Fehler "<" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
@echo off
setlocal enabledelayedexpansion
set "suchString=EFI partition capacity is"
set "dateiPfad=C:\Program Files (x86)\Abc\logs\messages.log"
set "zielPfad=C:\Temp\messages-output.txt"
set "failedString=FDE - FAILED EFI Partition Free Space check"
for /f "delims=" %%i in ('type "%dateiPfad%" ^| find "%suchString%"') do (
echo %%i | findstr "%failedString%" >nul
if not errorlevel 1 (
echo Bei Computer %Computername% String gefunden in Zeile: %%i >>"%zielPfad%"
)
)
endlocal
was ist hier falsch?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 5151857626
Url: https://administrator.de/contentid/5151857626
Ausgedruckt am: 19.11.2024 um 06:11 Uhr
5 Kommentare
Neuester Kommentar
Moin,
Gruß
@echo off
setlocal enabledelayedexpansion
set "suchString=EFI partition capacity is"
set "dateiPfad=C:\Program Files (x86)\Abc\logs\messages.log"
set "zielPfad=C:\Temp\messages-output.txt"
set "failedString=FDE - FAILED EFI Partition Free Space check"
for /f "delims=" %%i in ('type "%dateiPfad%" ^| find "%suchString%"') do (
echo %%i | findstr "%failedString%" >nul
if not errorlevel 1 (
echo Bei Computer !Computername! String gefunden in Zeile: %%i >>"%zielPfad%"
)
)
endlocal
Gruß
Ich möchte aber nur, dass etwas reingeschrieben wird wenn FDE - FAILED EFI Partition Free Space check gefunden wurde
Oben schreibst du aber das Gegenteil:Ich möchte im messages.log nach EFI partition capacity is suchen aber diese Suche soll nur erfolgen, wenn FDE EFI Partition Fress Space Check nicht vorhanden ist.
Was nun ? 🙃
Wenn das zweite dann so ansonsten das | | durch ein & & ersetzen (aber ohne Leerzeichen dzwischen ,scheint hier ein Forumsfehler zu sein).
@echo off
set "suchString=EFI partition capacity is"
set "dateiPfad=C:\Program Files (x86)\Abc\logs\messages.log"
set "zielPfad=C:\Temp\messages-output.txt"
set "failedString=FDE - FAILED EFI Partition Free Space check"
findstr /ilc:"%failedString%" "%dateiPfad%" >nul 2>&1 || (
>>"%zielPfad%" (for /f "delims=" %%i in ('findstr /ilc:"%suchString%" "%dateiPfad%" 2^>nul') do echo Bei Computer %Computername% String gefunden in Zeile: %%i)
)