zendara
Goto Top

Ini File mit Batch auslesen und weiter verarbeiten

Hallo,

Ich habe ein Problem mit einem Batch File welches mir Variablen aus einem Ini File auslesen und zB. mit echo wieder ausgeben soll.

Das Ini File hat foldenden Inhalt
[Variablen]
ServerIP=\\192.168.0.6
ServerPfad=transfer\programme
AutoServer=Automatisierung
AutoProfile=%userprofile%\Automatisierung
sys32=%SystemRoot%\system32

Das Batch Beispiel:
@echo off
SETLOCAL 

c:
cd\
cd "%userprofile%\Automatisierung\"  

rem set count=0
rem :start

for /f "tokens=1,2 delims==" %%a in (C:\Users\%localuser%\Automatisierung\Autostart.ini) do (  
if %%a==ServerIP set "ServerIP=%%b"  
if %%a==ServerPfad set ServerPfad=%ServerIP%\%%b
if %%a==AutoServer set AutoServer=%ServerPfad%\%%b
)

rem if %count%==10 goto weiter
rem set /a count=%count%+1
rem goto start
rem :weiter

echo.
echo ServerIP:		%ServerIP%
echo ServerPfad		%ServerPfad%
echo AutoServer:		%AutoServer%
echo.

pause

Das Ergebnis ist, dass es mir jetzt mit Echo nur die Server IP anzeigt.
Den richtigen Pfad in allen 3 Zeilen bekomme ich erst angezeigt, wenn ich die 5 Zeilen mit aktuell siehe "rem" gekennzeichet auch aktiviere.

Hat jemand eine Idee wie man das auch ohne dem Workaround lösen kann?

Danke Lg
Zendara

Content-ID: 249327

Url: https://administrator.de/contentid/249327

Ausgedruckt am: 08.11.2024 um 05:11 Uhr

colinardo
Lösung colinardo 16.09.2014 aktualisiert um 14:40:01 Uhr
Goto Top
Moin Zendara,
@echo off & setlocal enabledelayedexpansion
cd /d "%userprofile%\Automatisierung\"  

for /f "tokens=1,2 delims==" %%a in (C:\Users\%localuser%\Automatisierung\Autostart.ini) do (  
	if "%%a"=="ServerIP" set "ServerIP=%%b"  
	if "%%a"=="ServerPfad" set "ServerPfad=!ServerIP!\%%b"  
	if "%%a"=="AutoServer" (  
		set "AutoServer=!ServerPfad!\%%b"  
		echo ServerIP: !ServerIP!
		echo ServerPfad: !ServerPfad!
		echo AutoServer: !AutoServer!	
	)
)
pause
Grüße Uwe
Zendara
Zendara 16.09.2014 um 14:39:58 Uhr
Goto Top
Super, Herzlichen Danke

lg
Zendara