当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell:按操作系统检索域计算机列表

作者:精品下载站 日期:2024-12-14 07:31:12 浏览:13 分类:玩电脑

PowerShell:按操作系统检索域计算机列表


作为管理员,您应该对您的 Active Directory 环境有一个概述。当然,这也包括用户和计算机帐户。在这篇博文中,我将执行一些 PowerShell 命令来获取按操作系统过滤的域计算机列表。我将依次检索所有启用的 Windows 服务器、Windows 客户端和域控制器并单独显示它们。最后,我将查询所有域计算机并按操作系统对它们进行排序。我们走吧。

我将使用 PowerShell。如果您想加入,请打开 PowerShell (powershell.exe) 或 PowerShell ISE (ise.exe)。

检索所有 Windows Server 计算机

要检索按操作系统排序的所有启用的 Windows 服务器,我们需要定位操作系统属性。


Get-ADComputer -Filter 'operatingsystem -like "*server*" -and enabled -eq "true"' `
-Properties Name,Operatingsystem,OperatingSystemVersion,IPv4Address |
Sort-Object -Property Operatingsystem |
Select-Object -Property Name,Operatingsystem,OperatingSystemVersion,IPv4Address

[玩转系统] PowerShell:按操作系统检索域计算机列表

检索所有 Windows 客户端计算机

Windows 客户端计算机的操作系统属性中没有术语服务器。因此我们只需更改上面的代码并将操作系统查询设置为-notlike server。


Get-ADComputer -Filter 'operatingsystem -notlike "*server*" -and enabled -eq "true"' `
-Properties Name,Operatingsystem,OperatingSystemVersion,IPv4Address |
Sort-Object -Property Operatingsystem |
Select-Object -Property Name,Operatingsystem,OperatingSystemVersion,IPv4Address

[玩转系统] PowerShell:按操作系统检索域计算机列表

检索所有域控制器(无成员服务器)

为了显示所有域控制器,我决定以计算机帐户组成员身份为目标。所有域控制器都是域控制器组的成员,其 ID 为 516。


Get-ADComputer -Filter 'primarygroupid -eq "516"' `
-Properties Name,Operatingsystem,OperatingSystemVersion,IPv4Address |
Sort-Object -Property Operatingsystem |
Select-Object -Property Name,Operatingsystem,OperatingSystemVersion,IPv4Address

[玩转系统] PowerShell:按操作系统检索域计算机列表

检索所有成员服务器

要检索所有不是域控制器的服务器,请运行以下代码。


Get-ADComputer -Filter 'operatingsystem -like "*server*" -and enabled -eq "true" -and primarygroupid -ne "516"' `
-Properties Name,Operatingsystem,OperatingSystemVersion,IPv4Address |
Sort-Object -Property Operatingsystem |
Select-Object -Property Name,Operatingsystem,OperatingSystemVersion,IPv4Address

[玩转系统] PowerShell:按操作系统检索域计算机列表

检索按操作系统排序的所有计算机

最后但并非最不重要的一点是,我们通过运行以下代码来检索所有域计算机。


Get-ADComputer -Filter 'enabled -eq "true"' `
-Properties Name,Operatingsystem,OperatingSystemVersion,IPv4Address |
Sort-Object -Property Operatingsystem |
Select-Object -Property Name,Operatingsystem,OperatingSystemVersion,IPv4Address

[玩转系统] PowerShell:按操作系统检索域计算机列表

自定义输出

为了获得更好的视图,您可以在最后添加 Out-Gridview。这将打开一个图形窗口。或者您想将输出保存到文件中。然后 Out-File 或 ConvertTo-HTML 可以提供帮助。

网格视图


Get-ADComputer -Filter 'enabled -eq "true"' `
-Properties Name,Operatingsystem,OperatingSystemVersion,IPv4Address |
Sort-Object -Property Operatingsystem |
Select-Object -Property Name,Operatingsystem,OperatingSystemVersion,IPv4Address |
Out-GridView

[玩转系统] PowerShell:按操作系统检索域计算机列表

转换为 Html |输出文件

如果要将输出保存到文件(更准确地说是 HTML 文件),可以将 ConverToHtml 与 Out-File 一起使用。


Get-ADComputer -Filter 'enabled -eq "true"' `
-Properties Name,Operatingsystem,OperatingSystemVersion,IPv4Address |
Sort-Object -Property Operatingsystem |
Select-Object -Property Name,Operatingsystem,OperatingSystemVersion,IPv4Address |
ConvertTo-Html | Out-File C:\Temp\listcomputer.htm

[玩转系统] PowerShell:按操作系统检索域计算机列表

我希望我能够帮助其中一方获得其网络(尤其是 Active Directory 网络)的文档。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯