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-Key: 39925

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

Printed on: April 18, 2024 at 12:04 o'clock

Member: Biber
Biber Sep 12, 2006 at 13:10:05 (UTC)
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
Member: kalle10000
kalle10000 Sep 13, 2006 at 08:53:53 (UTC)
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
Member: kalle10000
kalle10000 Sep 13, 2006 at 10:49:51 (UTC)
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
Member: Biber
Biber Sep 13, 2006 at 11:02:42 (UTC)
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
Member: kalle10000
kalle10000 Sep 13, 2006 at 11:40:21 (UTC)
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.