Einen String in einer TXT finden, nur einen Teil als Variable setzen, FOR Schleife in FOR Schleife
Guten Abend alle miteinander,
nunja wenn ich hier die Sufu nutze findet man etliches zu dem Thema, aber ich habe nichts gefunden was mir weiterhilft.
Das Problem wird wohl sein, das ich mit einer FOR Schleife in einer FOR Schleife arbeiten muss. Komm ich zum Problem.
Ich habe eine Textdatei mit mehreren Zeilen. Aus einer Zeile brauche ich ein Stück. Momentan sieht das ganze so aus:
Wie ihr seht habe ich mehrere Dateien die abgearbeitet werden müssen. In diesem Prozess entsteht eine TXT Datei (%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\%%~nI.LCTLIC). In dieser TXT Datei muss ich einen String suchen und davon nur einen Teil übernehmen. Was ich bereits geschafft habe ist mit
den String schonmal in eine andere Datei auszulagern. Das ganze sieht dort etwas wüst aus...
Ich brauche quasi von Zeile 2 den 4rten Token und hier ist das Problem, denn
bleibt ohne Funktion, UNKNOWNBEHAVIORITHINK wird mir nicht als Variable angezeigt. !cont! ist leer.
Ich wäre super dankbar für eine Lösung, vielleicht gibt es sogar eine ohne den Umweg über eine andere Textdatei gehen zu müssen.
Grüsse Tim
nunja wenn ich hier die Sufu nutze findet man etliches zu dem Thema, aber ich habe nichts gefunden was mir weiterhilft.
Das Problem wird wohl sein, das ich mit einer FOR Schleife in einer FOR Schleife arbeiten muss. Komm ich zum Problem.
Ich habe eine Textdatei mit mehreren Zeilen. Aus einer Zeile brauche ich ein Stück. Momentan sieht das ganze so aus:
setlocal EnableDelayedExpansion
FOR /F "delims=*" %%I IN ('dir /b /s "%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\*.EDAT"') do (
%MYFILES%\make_npdata -v -d "%%I" 8 00000000000000000000000000000000>"%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\%%~nI.LCTLIC"
FOR %%A IN ("%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\%%~nI.LCTLIC") do find /I "EDAT flags: 0x0000003C" %%A>nul && SET flg=0
FOR %%A IN ("%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\%%~nI.LCTLIC") do find /I "EDAT flags: 0x0000000D" %%A>nul && SET flg=1
find /I "NPD content" "%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\%%~nI.LCTLIC" >"%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\%%~nI.cont"
rem FOR /F "tokens=* delims=*" %%A IN ('%MYFILES%\read_sfo "!TMPDIR!\PKG_EXTRACT_TMP\PARAM.SFO" CATEGORY') DO SET ps3_category=%%A >nul 2>&1
FOR /F "skip=2 tokens=4" %%P in ("%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\%%~nI.cont") do set cont=%%P
echo FLG=!FLG!
echo !cont! >"%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\%%~nI.contid"
)
pause
setlocal DisableDelayedExpansion
Wie ihr seht habe ich mehrere Dateien die abgearbeitet werden müssen. In diesem Prozess entsteht eine TXT Datei (%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\%%~nI.LCTLIC). In dieser TXT Datei muss ich einen String suchen und davon nur einen Teil übernehmen. Was ich bereits geschafft habe ist mit
find /I "NPD content" "%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\%%~nI.LCTLIC" >"%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\%%~nI.cont"
den String schonmal in eine andere Datei auszulagern. Das ganze sieht dort etwas wüst aus...
---------- E:\TEST\PKG_EXTRACT_TMP\DLC.LCTLIC
NPD content ID: UNKNOWNBEHAVIORITHINK
Ich brauche quasi von Zeile 2 den 4rten Token und hier ist das Problem, denn
FOR /F "skip=2 tokens=4" %%P in ("%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\%%~nI.cont") do set cont=%%P
echo !cont! >"%TMPDIR:~0,-1%\PKG_EXTRACT_TMP\%%~nI.contid"
bleibt ohne Funktion, UNKNOWNBEHAVIORITHINK wird mir nicht als Variable angezeigt. !cont! ist leer.
Ich wäre super dankbar für eine Lösung, vielleicht gibt es sogar eine ohne den Umweg über eine andere Textdatei gehen zu müssen.
Grüsse Tim
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 357466
Url: https://administrator.de/forum/einen-string-in-einer-txt-finden-nur-einen-teil-als-variable-setzen-for-schleife-in-for-schleife-357466.html
Ausgedruckt am: 06.01.2025 um 19:01 Uhr
3 Kommentare
Neuester Kommentar