ice.tigers 10 Geschrieben 14. Mai 2007 Melden Teilen Geschrieben 14. Mai 2007 Hallo, ich möchte wissen, welche Rechner sich noch in meiner Domäne mit SP1 befinden. Ich habe mir schon eine dsquery Abfrage gebaut und eine Liste bekommen. dsquery * domainroot -filter (objectCategory=Computer) -attr distinguishedName location operatingSystem operatingSystemVersion operatingSystemServicePack -limit 0 > C:dsquery.log Leider sind da auch sehr viele Leichen drin, von Rechnern, die es schon gar nicht mehr gibt. Gibt es einen Parameter, der die letzte Änderung/logon berücksichtigt oder eine andere Abfrage/Skript? Zitieren Link zu diesem Kommentar
Esta 114 Geschrieben 14. Mai 2007 Melden Teilen Geschrieben 14. Mai 2007 Hallo ice.tigers, leider kenne ich mich im Script nicht so gut aus. Aber vielleicht hilft dir das als Idee weiter: in der Ereignisanzeige - System wird das Starten des Eventlogs mit Datum und Zeit protokolliert. Ev. kannst du das abfragen. Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 14. Mai 2007 Melden Teilen Geschrieben 14. Mai 2007 hi, Idee: du kannst dir in vbs eine kleine Funktion schreiben, die mit der Classe win32_pingstatus die Erreichbarkeit des Clients prüft. Jenachdem gibt die Funktion dann einen errorlevel 0 oder 1 an die Batch zurück. Anhand dessen kann man dann beliebig auswerten Wenn das Thema bis dahin noch offen ist, schau ich's mir heute abend mal an. Es gibt aber sicher noch andere Lösungswege cu blub Zitieren Link zu diesem Kommentar
ice.tigers 10 Geschrieben 14. Mai 2007 Autor Melden Teilen Geschrieben 14. Mai 2007 Hallo blub, ich habe meinen Befehl um das Attribut lastlogon ergäntzt. Man bekommt zwar einen Wert, der erst zum Datum umgerechnet werden muss, So habe ich mir im Moment beholfen. Danke für deine Mühe! Zitieren Link zu diesem Kommentar
Ernst3 10 Geschrieben 15. Mai 2007 Melden Teilen Geschrieben 15. Mai 2007 Hallo, hast du evt schon mal dadrüber nach gedacht ein WSUS einzusetzen? WSUS.DE - Die Infoseite zu den Windows Server Update Services MFG Ernst Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 21. Mai 2007 Melden Teilen Geschrieben 21. Mai 2007 hier mal eine etwas ausgearbeitetere Version, die sich per wmi under win32_operatingsystemclasse die Daten holt --- On Error Resume Next Set objDictionary = CreateObject("Scripting.Dictionary") i = 0 Set objOU = GetObject("LDAP://ou=domain controllers, DC=test,dc=de") objOU.Filter = Array("Computer") For Each objComputer in objOU objDictionary.Add i, objComputer.CN i = i + 1 Next output "Name","OSType","Version","Major","Minor" For Each objItem in objDictionary StrComputer = objDictionary.Item(objItem) Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" & strComputer& "\root\cimv2") Set colProperties = objWMIService.ExecQuery _ ("SELECT OSType, Version,ServicePackMajorVersion,ServicePackMajorVersion FROM Win32_operatingsystem") for each strProperty in colproperties output strComputer,strproperty.ostype,strproperty.version, _ strProperty.ServicePackMajorVersion,strProperty.ServicePackMajorVersion next Next sub output(para1, para2, para3,para4,para5) intPadding = 17 - Len(para1) intPadding2 = 8 - Len(para2) intPadding3=15 - Len(para3) intPadding4=8 - Len(para4) para1 = para1 & Space(intPadding) para2 = para2 & Space(intPadding2) para3= para3 & Space(intPadding3) para4= para4 & Space(intPadding4) Wscript.Echo para1 & para2 & para3 & para4 & para5 end Sub -- was genau "Name","OSType","Version","Major","Minor" bedeuten, kann man hier nachlesen Win32_OperatingSystem Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.