
77575
11.06.2009, aktualisiert um 18:23:41 Uhr
Wort in txt finden und Zeile in andere txt schreiben
hallo,
gleich vorab, ja ich habe die suchfunktion und ich habe auch mid. 2 beiträge gefunden, die genau mein problem darstellen. aber die lösungen funktionieren nicht.
z. bsp. dieser beitrag: Mit Batch Suchbegriff in .txt finden und die nachfolgenden 8 Stellen auslesen und in neue Datei schreiben
nun zu meiner frage bzw. problem.
ich exportiere aus der registry einen key in eine textdatei. die txt sieht dann so aus:
usw
die Datei ist relativ groß.
jetzt möchte ich alle Einträge für ProductName in eine neue Textdatei schreiben.
D.h. dieser String kommt öfters vor. Optimal wäre es wenn man gleich das
in diesem Beispiel also
Probiert habe ich folgenden BatchCode
aber alles was in der MeineAusgabe.txt steht ist
Hoffe ein Batchspezi kann mir helfen.
gruss 01-01-01
gleich vorab, ja ich habe die suchfunktion und ich habe auch mid. 2 beiträge gefunden, die genau mein problem darstellen. aber die lösungen funktionieren nicht.
z. bsp. dieser beitrag: Mit Batch Suchbegriff in .txt finden und die nachfolgenden 8 Stellen auslesen und in neue Datei schreiben
nun zu meiner frage bzw. problem.
ich exportiere aus der registry einen key in eine textdatei. die txt sieht dann so aus:
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Products
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Products\00002109010090400000000000F01FEC
ProductName REG_SZ Microsoft Software Update for Web Folders (English) 12
PackageCode REG_SZ B7B7E888CEAAC854EADD4FDFDB421F28
Language REG_DWORD 0x409
Version REG_DWORD 0xc001919
usw
die Datei ist relativ groß.
jetzt möchte ich alle Einträge für ProductName in eine neue Textdatei schreiben.
D.h. dieser String kommt öfters vor. Optimal wäre es wenn man gleich das
ProductName REG_SZ
löschen könnte und so nur der reine Wert von Produktname übrig bleibt.in diesem Beispiel also
Microsoft Software Update for Web Folders (English) 12
Probiert habe ich folgenden BatchCode
@echo off & setlocal
set Quelle="D:\test\regausgabe.txt"
set Ausgabe="D:\test\MeineAusgabe.txt"
for /f "tokens=2 delims=:" %%i in ('findstr "ProductName REG_SZ " %Quelle%') do set Wert=%%i
set SoftwareName=%Wert:~1,8%
echo %SoftwareName%>> %Ausgabe%
endlocal
aber alles was in der MeineAusgabe.txt steht ist
WINDOWS\
Hoffe ein Batchspezi kann mir helfen.
gruss 01-01-01
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 118010
Url: https://administrator.de/forum/wort-in-txt-finden-und-zeile-in-andere-txt-schreiben-118010.html
Ausgedruckt am: 06.05.2025 um 22:05 Uhr
3 Kommentare
Neuester Kommentar
Hallo 01-01-01!
Freut mich, wenn's passt ...
:
Grüße
bastla
Freut mich, wenn's passt ...
auch wenn ich die tokens und delims nie verstehen werde 
Standard-Delimiter sind Leerzeichen und TAB (daher muss hier auch gar kein spezielles Trennzeichen angegeben werden), und was die "tokens" angeht: bis 3 zählen kannst Du doch, und mehr passiert hier auch nicht ProductName REG_SZ Microsoft Software Update for Web Folders (English) 12
^ Token 1 ^ ^ T2 ^ ^ Token * = alles nach 2 ohne weitere Unterteilung ^
^ignoriert^ ^%%i ^ ^ %%j ^
bastla