다음의 스크립트를 통해 이 기능을 이용할 수 있습니다. 중요한 점은 SAM 계정 이름, 계정 형식 등은 매개변수로 입력해야 합니다. 다음의 URL에서 다운로드할 수 있습니다.
http://www.windowsitpro.com/articles/download/AddGroup.zip
'Check that all arguments required have been passed.
If Wscript.Arguments.Count < 3 Then
Wscript.Echo "Arguments
Wscript.Quit(0)
End If
strObjectName = Wscript.Arguments(0) strObjectType = Wscript.Arguments(1)
strRootSearch = Wscript.Arguments(2)
Set objConnection = CreateObject("ADODB.Connection") objConnection.Open
"Provider=ADsDSOObject;"
Set objCommand = CreateObject("ADODB.Command") objCommand.ActiveConnection = objConnection
objCommand.CommandText = _ "
Set objRecordSet = objCommand.Execute
If objRecordset.RecordCount = 0 Then
WScript.Echo "sAMAccountName: " & strObjectName & " does not exist." intReturnValue=0
Else
WScript.Echo strObjectName & " exists."
objRecordSet.MoveFirst
Wscript.Echo "Distinguished Name: " & objRecordSet.Fields& DistingishedName").Value
intReturnValue=1
End If
objConnection.Close
스크립트를 실행하는 방법은 다음과 같이 2가지 방식입니다.
D:projectsVBScripts>cscript searchad.vbs john user dc=savilltech,dc=com
john exists. Distinguished Name: CN=John Savill,CN=Users,DC=savilltech,DC=com D:projectsVBScripts>cscript searchad.vbs johnnope user dc=savilltech,dc=com sAMAccountName: johnnope does not exist.
또한, 스크립트에서는 %ERRORLEVEL% 값을 이용할 수 있습니다. 개체가 존재하는 경우에는 1이고 없는 경우에는 0입니다. 결과 값을 보려면 'echo %errorlevel%'을 입력합니다.
samAccountName 대신에 CN(Common Name)을 이용하여 검색할 수도 있습니다. 또한, 와일드 카드를 사용할 수 있습니다.
objCommand.CommandText = _ "
WScript.Echo "sAMAccountName: " & strObjectName & " does not exist." intReturnValue=0 Else WScript.Echo strObjectName & " matched" Do Until objRecordSet.EOF Wscript.Echo "Name: " & objRecordSet.Fields("sAMAccountName").Value & " Distinguished Name: " & objRecordSet.Fields("distinguishedName").Value objRecordSet.MoveNext Loop intReturnValue=1 End If objConnection.Close wscript.quit(intReturnValue) 다음의 스크립트를 실행하면 결과값이 나타납니다.
D:projectsVBScripts>cscript searchad.vbs b* user "ou=Justice League,dc=savilltech,dc=com" b* matched
Name: barry Distinguished Name: CN=Barry Allen,OU=Justice League,DC=savilltech,DC=com
Name: bruce Distinguished Name: CN=Bruce Wayne,OU=Justice League,DC=savilltech,DC=com
D:projectsVBScripts>echo %errorlevel%
'윈도우 서버군 기술 강좌 > Active Directory' 카테고리의 다른 글
| AD 그룹에 새로운 사용자를 추가하는 스크립트는? (0) | 2006/12/18 |
|---|---|
| AD에 접속할 수 있도록 계정 정보를 스크립트로 전달하는 방법은? (0) | 2006/12/18 |
| AD에서 사용자/그룹에 존재하는지 확인하는 스크립트는? (0) | 2006/12/18 |
| DC에서 DNS 레코드를 다시 등록하는 방법은? (0) | 2006/12/15 |
| DC에서 담당하는 사이트를 살펴보는 방법은? (0) | 2006/12/15 |
| Windows 2003 ADS 서버에서 배치를 요청하는 클라이언트에 응답하지 않는 이유는? (0) | 2006/12/15 |



댓글을 달아 주세요