Batch läuft nicht so rund
Hallo liebe Gemeinde,
vielleicht weiß einer Rat warum der Befehl nicht ausgeführt wird? :O)
Ausgabe
Gruß
Heiko
vielleicht weiß einer Rat warum der Befehl nicht ausgeführt wird? :O)
:: @echo off
setlocal enabledelayedexpansion
set RemoveList="ICE-DC-REG"
for %%a in ("DS Server") do (
set Data=
for /f "tokens=2*" %%o in ('reg.exe query "HKEY_CURRENT_USER\Software\Microsoft\Exchange\Exchange Provider" /v "%%~a" 2^>NUL') do set Data=%%~p
for %%r in (%RemoveList%) do (
if /i "!Data!"=="%%~r" (
reg.exe delete "HKEY_CURRENT_USER\Software\Microsoft\Exchange\Exchange Provider" /v "%%~a" /f >NUL
)
)
)
Ausgabe
W:\>setlocal enabledelayedexpansion
W:\>set RemoveList="ICE-DC-REG"
W:\>for %a in ("DS Server") do (
set Data=
for /F "tokens=2*" %o in ('reg.exe query "HKEY_CURRENT_USER\Software\Microsoft\
Exchange\Exchange Provider" /v "%~a" 2>NUL') do set Data=%~p
for %r in ("ICE-DC-REG-01") do (if /I "!Data!" == "%~r" (reg.exe de
lete "HKEY_CURRENT_USER\Software\Microsoft\Exchange\Exchange Provider" /v "%~a"
/f 1>NUL ) )
)
W:\>(
set Data=
for /F "tokens=2*" %o in ('reg.exe query "HKEY_CURRENT_USER\Software\Microsoft\
Exchange\Exchange Provider" /v "DS Server" 2>NUL') do set Data=%~p
for %r in ("ICE-DC-REG-01") do (if /I "!Data!" == "%~r" (reg.exe de
lete "HKEY_CURRENT_USER\Software\Microsoft\Exchange\Exchange Provider" /v "DS Se
rver" /f 1>NUL ) )
)
W:\>set Data=
W:\>set Data=REG_SZ ICE-DC-REG-01
W:\>(if /I "!Data!" == "ICE-DC-REG-01" (reg.exe delete "HKEY_CURRENT
_USER\Software\Microsoft\Exchange\Exchange Provider" /v "DS Server" /f 1>NUL )
)
W:\>
Gruß
Heiko
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 273503
Url: https://administrator.de/forum/batch-laeuft-nicht-so-rund-273503.html
Ausgedruckt am: 10.04.2025 um 23:04 Uhr
5 Kommentare
Neuester Kommentar
Hallo liebe Gemeinde,
Hallo Heiko,vielleicht weiß einer Rat warum der Befehl nicht ausgeführt wird? :O)
Welcher?27. W:\>(if /I "!Data!" == "ICE-DC-REG-01" (reg.exe delete "HKEY_CURRENT
28. _USER\Software\Microsoft\Exchange\Exchange Provider" /v "DS Server" /f 1>NUL )
29. )
Weil "!Data!" nicht gleich "ICE-DC-REG-01" ist?
Gruß
Dominique
Ich glaube, du verstehst die Problematik nicht...
Zur Veranschaulichung:
Würde funktionieren.
Und selbst, wenn wir !Data! mal aufschlüsseln...
Ist das Ergebnis immernoch false.
Zur Veranschaulichung:
(if /I "abc" == "abc" (reg.exe delete "HKEY_CURRENT_USER\Software\Microsoft\Exchange\Exchange Provider" /v "DS Server" /f 1>NUL ))
Und selbst, wenn wir !Data! mal aufschlüsseln...
(if /I "REG_SZ" == "CE-DC-REG-0" (reg.exe delete "HKEY_CURRENT_USER\Software\Microsoft\Exchange\Exchange Provider" /v "DS Server" /f 1>NUL ))