Cha*_*les 5 windows powershell active-directory domain dsquery
我想检索属于我的 Windows 7 工作站所属的 Windows 域的计算机列表。
我想在几乎不需要额外安装的情况下实现这一点,尤其是 Microsoft 提供的 230MB 远程服务器管理工具包。
到目前为止,我看到的选项包括 DSQuery 工具(RSAT 包的一部分)和 PowerShell 的 ActiveDirectory 模块(也是 RSAT 包的一部分)。
关于将执行查询的用户的权限,我希望能够使用非特权域用户,但如果没有非特权替代方案,管理员也是一个选项。
我还将提到该net view命令显示同一子网中或工作站“附近”的几台计算机,但显然不是域中的所有计算机。另一方面,该命令不net view /domain:<domain_name>显示任何结果,并返回错误 6118(这很奇怪,因为我希望net view也不会显示任何结果)。
您始终可以通过 PowerShell/.NET 和命名空间使用ADSISystem.DirectoryServices接口。
下面是一个简单示例,DirectorySearcher假设您以标准域用户身份运行 PowerShell。
$searcher = New-Object DirectoryServices.DirectorySearcher
$searcher.Filter = '(objectclass=computer)'
$searcher.SearchRoot = 'LDAP://DC=example,DC=com'
$searcher.FindAll()
Run Code Online (Sandbox Code Playgroud)
在我看来,它不如使用 ActiveDirectory 模块那么好。但它绝对是可行的,并且在某些情况下可能比 ActiveDirectory 模块更快。
您还可以仅从另一个安装中提取 ActiveDirectory 模块文件并将其添加到您的个人配置文件中,而无需安装整个 RSAT 软件包。如果我没记错的话,它是一个文件夹和大约 5 MB 的文件。
| 归档时间: |
|
| 查看次数: |
509 次 |
| 最近记录: |