jschneider
Goto Top

Problem mit Anführungszeichen

also ich habe es jetzt mit vielen Beipsielen - die ähnlich aber eben nicht ganz exakt auf meinen Fall zutreffen - probiert

und ich bin langsam am verzweifeln .. face-smile


ich möchte per
dfscmd /view \\meine.domain.intern\DFS /batch

sämtliche DFS Ordner eines DFS-Stammes auslesen.
Das klappt auch soweit.

Ich erhalte das Ergebnis:

dfscmd /map "\\meine.domain.intern\DFS\DFSFolder\DFSLink\Foldername" "\\servername\sharename\Foldername" ""

Anhand des zweiten, in "-Zeichen stehenden Werte möchte ich überprüfen, ob der Ordner noch existiert und falls nicht, den DFS-Folder aus der ersten in "-Zeichen stehenden Wert entfernen.

Eine Art DFS-Lifecycle

aber ! und jetzt kommts

wenn in den, in den "-Zeichen stehenden Werten ein Leerzeichen enthält schaffe ich es nicht diese werte sauber aus der Ergebniszeile zu extrahieren

dfscmd /map "\\meine.domain.intern\DFS\DFSFolder\DFSLink\Folder Name" "\\servername\sharename\Folder Name" ""

der letzte Wert in den "-Zeichen ist ein potentielles Kommentarfeld und unrellevant

Das heisst eigentlich möchte ich aus der Zeile "nur" das dfscmd /map und die letzten beiden, leeren "" - Zeichen weghaben und die beiden Werte in den "-zeichen in einer Variable haben, und zwar mit den "-Zeichen, da das ja Pfade mit Leerzeichen darstellen


Ich habe diverseste Varianten ausprobiert, könnte also jetzt nichts wiedergeben, was dem m nächsten gekommen wäre
Das letzte versuchsding war

FOR /F "tokens=1,2 delims=" %%i in ('dfscmd /view %DFSRoot_var% /batch') do (
echo Wert 1 %%i
FOR /F " tokens=1,2,3,4 delims=" %%i in ("%%~i") do set "line=%%i" & echo Wert2 !line:^"=!
)


Vielen dank für fachmännischen Rat

jan

Content-ID: 101292

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

Ausgedruckt am: 22.11.2024 um 12:11 Uhr

jschneider
jschneider 07.11.2008 um 13:36:40 Uhr
Goto Top
typisch .. man kämpft stunden und schreit dann irgendwann um Hilfe,

kaum hat man geschreien macht es klick...


vielleicht nicht schön, aber selten

:start1


FOR /F "tokens=1,2 delims=" %%i in ('dfscmd /view %DFSRoot_var% /batch') do (  
       rem echo Wert 1 %%i
       FOR /F " tokens=1,2,3,4 delims=" %%i in ("%%~i") do (  
        set "line=%%i"   
        call :start2 !line:dfscmd /map=!"  

       )
)
goto :eof



:start2
set wert4=%1
set wert5=%2
 echo 1 %wert4%
 echo 2 %wert5%