kalle10000
Goto Top

dsquery Ergebnis in Variable speichern

Hi! Ich fang gerade erstmal damit an.

ich möchte wie oben erwähnt das Ergebnis in eine Variable speichern.
Ich habe WinXp und Win2000. Das Ergebnis sieht bei XP so aus:

office
Raum 100
dsget war erfolgreich

mit

for /f "tokens=2,3 delims= " %%i in ('dsquery user -name "peter pan" | dsget user -office') do set aktuellerRaum=%%i

geht es nicht.

Ich möchte, dass nur Raum100 gespeichert wird.

Thx im Voraus

Content-ID: 39925

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

Ausgedruckt am: 17.11.2024 um 17:11 Uhr

Biber
Biber 12.09.2006 um 15:10:05 Uhr
Goto Top
Moin kalle10000,

Du musst die "Dsget war erfolgreich" Zeile rausfiltern und von dem, was übrig bleibt, 2 Zeilen skippen.

also (ungetestet):
for /f "skip=2 delims=" %%i in ('dsquery user -name "peter pan" ^| dsget user -office ^| find /v "erfolgreich" ') do set "aktuellerRaum=%%i"  
-oder-

for /f "skip=2 delims=" %%i in ('dsquery user -name "peter pan" ^| dsget user -office ^2^>nul ') do set "aktuellerRaum=%%i"  

Ob Du nun 2 oder 3 Zeilen skippen musst... ausprobieren.

Gruß
Biber
kalle10000
kalle10000 13.09.2006 um 10:53:53 Uhr
Goto Top
Danke. Das werde ich glaich mal ausprobieren. Die Lösung ist auf jeden Fall eleganter als meine. Ich habe jetzt den dsquery befehl in eine Variable gespeichert und dann den dsget befehl mit | find "Raum" in eine Variable gespeichert. Geht auch. Aber deine Lösung gefällt mir besser.
Thx Biber
kalle10000
kalle10000 13.09.2006 um 12:49:51 Uhr
Goto Top
Hammer

mit

for /f "tokens=1-2 delims= " %i in ('dsquery user -samid %username% ^| dsget user -office ^| find "Raum"') do set aktuellerRaum=%j

kommt genau die 100 raus.

Danke
Biber
Biber 13.09.2006 um 13:02:42 Uhr
Goto Top
Hm... und die anderen beiden Varianten?

Denn falls mal ein Client nicht in einem "Raum" steht, sondern in einer "Halle" oder im "Sekretariat", fasst Du ja ins Leere...

Gruß
Biber
kalle10000
kalle10000 13.09.2006 um 13:40:21 Uhr
Goto Top
keine Ahnung. So groß unterscheiden sich die Varianten ja nicht.

Ja ok, wenn da nur Halle oder Sekretariat in der AD eingetragen ist, habe ich ein Problem.
Das Sekretariat hat zum Glück eine Raumnummer, bei einer Halle müsste ich mir wirklich Gedanken machen.