Полезные скрипты [vbs,bat] для сисадмина. Часть 2

Этот пост является продолжением темы. В этот раз выкладываю еще более полезные для админа скрипты:

find all users in domain.vbs

' Этот VBScript код ищет все аккаунты пользователей в домене и выводит рез-тат в файл
' —————————————————————
' Сей код можно найти в книге:
'     "Active Directory Cookbook" by Robbie Allen
' ISBN: 0-596-00466-4
' —————————————————————

' —— SCRIPT CONFIGURATION ——
strDomainDN = "ваш_домен"    ' e.g. dc=rallencorp,dc=com
LogFolder = "путь_для_сохранения"
' —— END CONFIGURATION ———

Set FSO = CreateObject("Scripting.FileSystemObject")
Set LogFile = FSO.OpenTextFile(LogFolder & "\list.txt", 8, True)

strBase   =  "<LDAP://" & strDomainDN & ">;"
' Для поиска в Глобальном каталоге, раскомментируйте эту строку:
' strBase   =  "<GC://" & strDomainDN & ">;"

strFilter = "(&(objectclass=user)(objectcategory=person));"
strAttrs  = "name;"
strScope  = "subtree"

LogFile.WriteLine Now

set objConn = CreateObject("ADODB.Connection")
objConn.Provider = "ADsDSOObject"
objConn.Open "Active Directory Provider"
set objRS = objConn.Execute(strBase & strFilter & strAttrs & strScope)
objRS.MoveFirst
while Not objRS.EOF
LogFile.WriteLine objRS.Fields(0).Value
objRS.MoveNext

wend

LogFile.Close
WScript.Echo "Скрипт выполнен. Файл находится в " & LogFolder

find all computers in domain.vbs

' Этот VBScript код находит все аккаунты компьютеров в Active Directory

Const ADS_SCOPE_SUBTREE = 2
strDomain = "ваш_домен"

Set objConnection = CreateObject("ADODB.Connection")
Set objCommand =   CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"

Set objCOmmand.ActiveConnection = objConnection
objCommand.CommandText = _
"Select Name, Location from 'LDAP://" & strDomain & "' " _
& "Where objectCategory='computer'"
objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst

Do Until objRecordSet.EOF
Wscript.Echo "Computer Name: " & objRecordSet.Fields("Name").Value
Wscript.Echo "Location: " & objRecordSet.Fields("Location").Value
objRecordSet.MoveNext
Loop

find all disabled users in domain.vbs

' Этот VBScript код находит все отключенные (disabled) аккаунты пользователей в Active Directory

' —————————————————————
' Сей код можно найти в книге:
'     "Active Directory Cookbook" by Robbie Allen
' ISBN: 0-596-00466-4
' —————————————————————

' —— SCRIPT CONFIGURATION ——
strDomainDN = "ваш_домен"    ' e.g. dc=rallencorp,dc=com
' —— END CONFIGURATION ———

strBase   =  "<LDAP://" & strDomainDN & ">;"
strFilter = "(&(objectclass=user)(objectcategory=person)" & _
"(useraccountcontrol:1.2.840.113556.1.4.803:=2));"
strAttrs  = "name;"
strScope  = "subtree"

set objConn = CreateObject("ADODB.Connection")
objConn.Provider = "ADsDSOObject"
objConn.Open "Active Directory Provider"
set objRS = objConn.Execute(strBase & strFilter & strAttrs & strScope)
objRS.MoveFirst
while Not objRS.EOF
Wscript.Echo objRS.Fields(0).Value
objRS.MoveNext
wend

Полезные скрипты [vbs,bat] для сисадмина. [Часть 1] [Часть 2] [Часть 3]


Также рекомендую следующие записи:


Понравилась статья? Подпишись на обновления по RSS, E-mail или добавляйте меня в Twitter.

Комментариев нет


Комментариев пока нет, хотите стать первым?

Оставить комментарий

XHTML: Вы можете использовать эти теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>