Zeile aus Datei einlesen und in zwei Variablen speichern.
ich brauch mal eben jemand, der mich in die richtige Richtung schubst
Ich habe eine Datei mit folgendem Aufbau:
Ziel ist jeweils den Pfad in eine, und den Rest der Zeile in eine andere Variable zu speichen.
Mein bisheriger Ansatz war u.A. der folgende:
Leider funktioniert das nicht so ganz, und ich hab im moment keine Ahnung wo der Fehler liegt.
Ich habe eine Datei mit folgendem Aufbau:
\\pfad\irgendwo\hin\ohne_space CN=vor nachname,OU=blah,OU=blubb,dc=domain,dc=local
\\pfad\irgendwo\hin\mit space CN=mit Leerzeichen,OU=Muster,OU=blah,OU=blubb,dc=domain,dc=local
\\pfad\irgendwo\hin\3 CN=ohne_leerzeichen,OU=Muster,OU=blah,OU=blubb,dc=domain,dc=local
Ziel ist jeweils den Pfad in eine, und den Rest der Zeile in eine andere Variable zu speichen.
Mein bisheriger Ansatz war u.A. der folgende:
for /F "delims=*" %%l in (home2.txt) do Call :SplitLine "%%l"
:SplitLine
for /F "tokens=1" %%h in (%1) do SET userhome=%%h
for /F "tokens=2,* delims=CN=" %%s in (%1) do SET dn=CN=%%s
echo home="%userhome%"
echo DN="%dn%"
GOTO :EOF
Leider funktioniert das nicht so ganz, und ich hab im moment keine Ahnung wo der Fehler liegt.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 69444
Url: https://administrator.de/contentid/69444
Ausgedruckt am: 21.11.2024 um 12:11 Uhr
2 Kommentare
Neuester Kommentar
Hallo SlainteMhath!
Versuch es so:
Grüße
bastla
[Edit] Zeile "if not defined userhome goto :Done" zur Absicherung gegen leeres %userhome% hinzugefügt. [/Edit]
Versuch es so:
@echo off & setlocal
for /F "delims=*" %%l in (home2.txt) do Call :SplitLine "%%l"
GOTO :EOF
:SplitLine
for /F "tokens=1* delims=CN=" %%h in (%1) do SET "userhome=%%h" & SET "dn=CN=%%i"
:DelTrailingBlanks
if not defined userhome goto :Done
if "%userhome:~-1,1%" neq " " goto :Done
set "userhome=%userhome:~0,-1%"
goto :DelTrailingBlanks
:Done
echo home="%userhome%"
echo DN="%dn%"
GOTO :EOF
Grüße
bastla
[Edit] Zeile "if not defined userhome goto :Done" zur Absicherung gegen leeres %userhome% hinzugefügt. [/Edit]