脚本:列出域客户端计算机的本地管理员成员
2009-12-31 15:43
183 查看
有个客户问能不能限制域客户端计算机的本地管理员组成员,回答他可以使用组策略中的受限制的组实现。又怕他会问组策略没有反馈结果,就拼凑了下面的脚本
使用说明:
把下面代码拷贝到记事本中,并另存为listlocalgroup.vbs
将listlocalgroup.vbs拷贝到域控的C盘根目录中
在域控的根目录下新建computers.txt,其中为域客户端计算机名,每个一行
使用域管理员打开命令行,在命令行中输入以下命令:
cd \
cscript listlocalgroup.vbs
等待命令执行完毕会在目录下生成Cscript_result.csv文件,使用excel对csv文件进行筛选
脚本内容:
--------------------------------------------------------------------
Const ForReading = 1
Const ForAppending = 8
Wscript.Echo "正在获取客户端的本地管理员组成员,使用时间由客户端数量决定。"
Wscript.Echo "请耐心等待..."
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objOpenTextFile = objFSO.OpenTextFile _
("c:\computers.txt", ForReading)
Set objWriteTextFile = objFSO.OpenTextFile _
("C:\Script_result.csv", ForAppending, True)
Do Until objOpenTextFile.AtEndOfStream
strNextLine = objOpenTextFile.Readline
arrServiceList = Split(strNextLine , ",")
Wscript.Echo "计算机名: " & arrServiceList(0)
strComputer = arrServiceList(0)
WritetoTXT = arrServiceList(0)
'objWriteTextFile.WriteLine(strComputer)
Set colGroups = GetObject("WinNT://" & strComputer & "")
colGroups.Filter = Array("group")
For Each objGroup In colGroups
if objgroup.name = "Administrators" then
Wscript.Echo "本地管理员组成员:"
'objWriteTextFile.WriteLine(objGroup.Name)
For Each objUser in objGroup.Members
Wscript.Echo vbTab & objUser.Name
WritetoTXT = WritetoTXT & "," & objUser.Name
'objWriteTextFile.WriteLine(vbTab & objUser.Name)
Next
end if
Next
if WritetoTXT <> strComputer then
objWriteTextFile.WriteLine(WritetoTXT)
end if
Loop
objWriteTextFile.Close
objOpenTextFile.Close
Wscript.Echo "已完成,结果已写入C:\Script_result.csv"
--------------------------------------------------------------------本文出自 “kylin_li” 博客,请务必保留此出处http://kylinli.blog.51cto.com/6719/253269
使用说明:
把下面代码拷贝到记事本中,并另存为listlocalgroup.vbs
将listlocalgroup.vbs拷贝到域控的C盘根目录中
在域控的根目录下新建computers.txt,其中为域客户端计算机名,每个一行
使用域管理员打开命令行,在命令行中输入以下命令:
cd \
cscript listlocalgroup.vbs
等待命令执行完毕会在目录下生成Cscript_result.csv文件,使用excel对csv文件进行筛选
脚本内容:
--------------------------------------------------------------------
Const ForReading = 1
Const ForAppending = 8
Wscript.Echo "正在获取客户端的本地管理员组成员,使用时间由客户端数量决定。"
Wscript.Echo "请耐心等待..."
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objOpenTextFile = objFSO.OpenTextFile _
("c:\computers.txt", ForReading)
Set objWriteTextFile = objFSO.OpenTextFile _
("C:\Script_result.csv", ForAppending, True)
Do Until objOpenTextFile.AtEndOfStream
strNextLine = objOpenTextFile.Readline
arrServiceList = Split(strNextLine , ",")
Wscript.Echo "计算机名: " & arrServiceList(0)
strComputer = arrServiceList(0)
WritetoTXT = arrServiceList(0)
'objWriteTextFile.WriteLine(strComputer)
Set colGroups = GetObject("WinNT://" & strComputer & "")
colGroups.Filter = Array("group")
For Each objGroup In colGroups
if objgroup.name = "Administrators" then
Wscript.Echo "本地管理员组成员:"
'objWriteTextFile.WriteLine(objGroup.Name)
For Each objUser in objGroup.Members
Wscript.Echo vbTab & objUser.Name
WritetoTXT = WritetoTXT & "," & objUser.Name
'objWriteTextFile.WriteLine(vbTab & objUser.Name)
Next
end if
Next
if WritetoTXT <> strComputer then
objWriteTextFile.WriteLine(WritetoTXT)
end if
Loop
objWriteTextFile.Close
objOpenTextFile.Close
Wscript.Echo "已完成,结果已写入C:\Script_result.csv"
--------------------------------------------------------------------本文出自 “kylin_li” 博客,请务必保留此出处http://kylinli.blog.51cto.com/6719/253269
相关文章推荐
- 获取域内所有计算机本地管理员组内成员的POWESHELL CMDLET
- 如何在域环境使用脚本批量更改客户端本地管理员密码
- 利用域控设置启动脚本统一更改客户端administrator密码和添加客户端本地管理员账号
- 利用域控设置启动脚本统一更改客户端administrator密码和添加客户端本地管理员账号
- 利用域控设置启动脚本统一更改客户端administrator密码和添加客户端本地管理员账号
- 自动加域脚本 /改计算机名/加域/加用户到本地管理员组
- “由于无法升级或重续本地计算机的客户端访问许可证,远程会话被中断。请跟服务器管理员联系。”问题的解决
- 远程连接出现“由于无法升级或重续本地计算机的客户端访问许可证,远程会话被中断。请跟服务器管理员联系。”问题的解决方法
- 由于这台计算机没有终端服务器客户端访问许可证,远程会话被中断。请与服务器管理员联系 解决
- 域用户开机自动加入本地管理员组VBS脚本+限制多点登录
- 脚本修改域内本地管理员密码
- 组策略 之 统一修改域中计算机的本地管理员账户和密码和受限制组
- Win2012 AD中将域用户加入到所有客户端本地管理员组中
- 修改本地管理员密码脚本
- 无法升级或重续本地计算机的客户端访问许可证的解决
- 错误提示由于这台计算机没有终端服务器客户端访问许可证,远程会话被中断。请与服务器管理员联系
- 远程连接“由于无法升级或重续本地计算机的客户端访问许可证,远程会话被中断"的解决
- 如何实现自动把域帐户加到本地管理员组里?如果通过脚本实现
- 如何通过组策略将指定用户加入本地计算机管理员组
- 在域环境使用脚本批量更改客户机本地管理员密码