Dsquery filtern nach Betriebssystem, nur aktive Konten, die in den letzten 90 Tagen aktiv waren?
Hallo,
ich will alle Windows 2003 Server, die nicht deaktiviert sind und die in den letzten 90 Tagen aktiv waren.
Das hab ich bis jetzt:
Alle Computerkonten, die länger als 90 Tage inaktive waren:
"dsquery computer -stalepwd 90 -name *"
Alle aktiven Windows 2003 Server.
dsquery * -filter "(&(objectClass=computer)(operatingSystemVersion=5.2*)(!userAccountControl:1.2.840.113556.1.4.803:=2))"
Kann man die kombinieren oder wie kann man das sonst lösen. Es dürfte auch eine Abfrage im dsa.msc sein.
Danke
Martin
ich will alle Windows 2003 Server, die nicht deaktiviert sind und die in den letzten 90 Tagen aktiv waren.
Das hab ich bis jetzt:
Alle Computerkonten, die länger als 90 Tage inaktive waren:
"dsquery computer -stalepwd 90 -name *"
Alle aktiven Windows 2003 Server.
dsquery * -filter "(&(objectClass=computer)(operatingSystemVersion=5.2*)(!userAccountControl:1.2.840.113556.1.4.803:=2))"
Kann man die kombinieren oder wie kann man das sonst lösen. Es dürfte auch eine Abfrage im dsa.msc sein.
Danke
Martin
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 134511
Url: https://administrator.de/forum/dsquery-filtern-nach-betriebssystem-nur-aktive-konten-die-in-den-letzten-90-tagen-aktiv-waren-134511.html
Ausgedruckt am: 21.05.2025 um 05:05 Uhr
6 Kommentare
Neuester Kommentar
Hallo AlbertMinrich!
Unter Verwendung von Temporärdateien ungetestet etwa so:
Grüße
bastla
Unter Verwendung von Temporärdateien ungetestet etwa so:
@echo off & setlocal
set "Active=D:\Active.txt"
set "Inactive=%temp%Iinactive.txt"
set "Servers=%temp%\Servers.txt"
dsquery computer -stalepwd 90 -name *>"%Inactive%"
dsquery * -filter "(&(objectClass=computer)(operatingSystemVersion=5.2*)(!userAccountControl:1.2.840.113556.1.4.803:=2))">"%Servers%"
findstr /v /i /g:"%Inactive%" "%Servers%">"%Active%"
bastla
Servus,
versuche es mal mit diesem ungetesteten Befehl (alles in einer Zeile):
dsquery * -Filter "(&(&(objectCategory=Computer)(operatingSystem=Windows Server 2003)(!useraccountcontrol:1.2.840.113556.1.4.803:=2)(LastLogonTimeStamp<=129015642047040000)))"
Im Übrigen kannst du die Zeiten bzw. Large Integer Werte auf dieser Seite umrechnen lassen:
[Timestamp: Unix- und Microsoft Windows / Active Directory (LDAP)-Zeit umrechnen]
http://www.redhelp.de/de.php
Viele Grüße
/ > Yusuf Dikmenoglu
versuche es mal mit diesem ungetesteten Befehl (alles in einer Zeile):
dsquery * -Filter "(&(&(objectCategory=Computer)(operatingSystem=Windows Server 2003)(!useraccountcontrol:1.2.840.113556.1.4.803:=2)(LastLogonTimeStamp<=129015642047040000)))"
Im Übrigen kannst du die Zeiten bzw. Large Integer Werte auf dieser Seite umrechnen lassen:
[Timestamp: Unix- und Microsoft Windows / Active Directory (LDAP)-Zeit umrechnen]
http://www.redhelp.de/de.php
Viele Grüße
/ > Yusuf Dikmenoglu
Wie er leibt und lebt!
dann nochmal Danke für die Seite.
Freut mich zu hören. Zumindest weiß ich jetzt, dass mindestens einer (also du) die Seite kennt und liest.
Gibt´s auch eine Möglichkeit, bei einer Abfrage auf Windows 2003 Server zu unterscheiden zwischen Standard und Enterprise?
Zumindest nicht über eine "normale" AD-Abfrage wie z.B. mit dsquery. Denn unter Windows Server 2003 sind die Attribute:
- operatingSystem
- operatingSystemVersion
zwischen der Standard- und Enterprise-Version unter Windows Server 2003 identisch.
Bei Windows 2000 zwischen Server und Professional.
[LDAP:Yusufs.Directory.Blog/ - Den OS- und SP-Stand abfragen]
http://blog.dikmenoglu.de/Den+OS+Und+SPStand+Abfragen.aspx
Bei Windows NT (ja, immer noch) zwischen Server und Workstation.
Auhaa... doch noch NT. Das ist nun wirklich zu lange her. Aber das kannst du ganz einfach herausfinden.
Überprüfe in der MMC "AD-Benutzer und -Computer" in den Eigenschaften eines NT-Servers und einer NT-Workstation was im Reiter "Betriebssystem" in den Feldern
"Name" und "Version" steht. Hinter dem Feldnamen "Name" steckt das Attribut "operatingSystem" und hinter dem Feld
"Version" steckt das Attribut "operatingSystemVersion". Anschließend kannst du mit dem o.g. Link deinen Filter bauen.
[LDAP:Yusufs.Directory.Blog/ - Die Active Directory-Attribute hinter den Feldnamen]
http://blog.dikmenoglu.de/Die+Active+DirectoryAttribute+Hinter+Den+Feld ...
Gruß, Yusuf