husana

Bat-Datei - aus einer ini-datei 2 Einträge auslesen und in .txt schreiben

habe da mal ein problem mit dem ich schon was länger am kämpfen bin.

Guten Morgen,

habe ein bat-file um aus einer .ini datei eine zeile bzw eine zahl auszulesen. nun möchte ich eine weitere zeile bzw. zahl mit auslesen.

bisher sieht es so aus:

for /d %%i in ("%Ordner%*.*") do if exist "%%i est.ini" for /f "tokens=3" %%a in ( 'findstr /b /c:"Terminal = " "%%i est.ini"' ) do >>"%Liste%" echo %%~nxi - %%a

er kopiert mir die zahl hinter (Terminal = XX)
nun möchte ich die zahl die hinter (TERM = XXX) mit auslesen.

meine txt datei sollte dann so aussehen:

Datei:-----(Terminal = XX) ---(TERM = XXX)
PC01-------------- 10 --------------- 123

es müsste irgendwo noch ein "findstr" eingebaut werden, oder?

Vielen Dank schonmal für eure Hilfe

mfG husana
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 155382

Url: https://administrator.de/forum/bat-datei-aus-einer-ini-datei-2-eintraege-auslesen-und-in-txt-schreiben-155382.html

Ausgedruckt am: 18.06.2025 um 21:06 Uhr

bastla
bastla 19.11.2010 um 10:31:19 Uhr
Goto Top
Hallo husana!

Ungetestet etwa so:
@echo off & setlocal
for /d %%i in ("%Ordner%\*.*") do if exist "%%i\est.ini" call :ProcessFile "%%i\est.ini"  
goto :eof
	
:ProcessFile
set "Terminal=#NV"  
for /f "tokens=3" %%a in ('findstr /b /c:"Terminal = " %1' ) do set "Terminal=%%a"  
set "TERM=#NV"  
for /f "tokens=3" %%a in ('findstr /b /c:"TERM = " %1' ) do set "TERM=%%a"  
>>"%Liste%" echo %~nx1 - %Terminal% - %TERM%  
goto :eof
Das Vorbelegen der Variablen mit "#NV" (abgeleitet von der gleichnamigen Excel-Fehlermeldung) soll dafür sorgen, dass für den Fall, dass der Eintrag nicht gefunden wurde, nicht ein "alter" Wert verwendet, sondern die Fehlermeldung in die Datei geschrieben wird.

Grüße
bastla
husana
husana 19.11.2010 um 14:29:07 Uhr
Goto Top
Hallo bastla

Hat alles super funktioniert. Besten Dank bastla

mfG husana
micneu
micneu 19.11.2010 um 14:29:24 Uhr
Goto Top
woher bekommst du den rechner namen?
auch aus der datei?
da war ich ja jetzt zu spät.

gruß michael