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

[玩转系统] Get-AdComputer:使用 PowerShell 查找 OU 中的计算机

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

Get-AdComputer:使用 PowerShell 查找 OU 中的计算机


对于今天的 cmdlet,我们将重点关注 Get-AdComputer。此 cmdlet 是 Get-AdUser 的兄弟。此 cmdlet 不是从 Active Directory (AD) 获取用户,而是查找 OU 中的计算机。

您将在 ActiveDirectory PowerShell 模块中找到 Get-AdComputer cmdlet。如果您尚未安装,请在此处了解如何安装。

基础

如果您以前从未使用过 Get-AdComputer cmdlet,请确保您了解基础知识。您将使用 IdentityFilter 参数搜索和检索计算机。

身份参数

最基本的是,Get-Adcomputer 使用 Identity 参数从 AD 获取单个计算机对象。如果您有一台名为 FOO 的计算机,那么您需要提供该值,如下所示。

Get-AdComputer -Identity FOO

默认情况下,cmdlet 将仅返回一些 AD 属性。如果您想查看计算机的所有 AD 属性,请使用 Properties 参数。

通过将星号与下面的 Properties 参数结合使用,PowerShell 将返回所有 AD 属性。但如果您只想查看其中的几个,则可以指定它们,以逗号分隔。

Get-AdComputer -Identity FOO -Properties *

与所有其他 Active Directory PowerShell cmdlet 身份参数一样,您也可以指定可分辨名称 (DN)、GUID 或 SID。

过滤器参数

如果您需要查找多个计算机帐户,请使用Filter 参数。 Filter 参数是许多 ActiveDirectory 命令中的常见参数。它允许您指定帐户必须满足才能返回的条件。

如果不使用 Identity 参数,则必须使用Filter 参数。例如,如果您想查找 AD 中的所有计算机帐户,则可以指定星号。星号是匹配所有计算机帐户的通配符。

Get-AdComputer -Filter *

也许您需要查找所有以字母“F”开头的计算机。在这种情况下,您需要制作如下所示的过滤器语法。

Get-ADComputer -Filter "Name -like 'F*'"

LDAPFilter 参数

如果您擅长 LDAP 过滤器,还可以使用 LDAPFilter 参数。 LDAP 过滤器允许您使用 LDAP 语法来精确定位您正在查找的计算机。 LDAPFilter 可以与 SearchBase 参数一起使用,也可以单独使用。

下面,我使用 LDAP 过滤器查找所有以 F 开头的计算机。

Get-ADComputer -LDAPFilter "(name=f*)"

有关构建过滤器的更多信息,请查看在 PowerShell 中学习 Active Directory 和 LDAP 过滤器。

在 OU 中查找计算机

使用 Identity 参数按名称查找计算机或使用 Filter 参数按各种 AD 属性查找计算机只是其中一种选择。您还可以按计算机帐户所在的 OU 查找计算机帐户。

Get-Adcomputer 有一个 SearchBase 参数,您可以使用该参数将搜索限制为仅某个 OU 和/或其所有子 OU。

也许您需要查找域控制器 OU 中的所有域控制器。您可以使用 SearchBase 参数将返回的计算机帐户范围限制为仅返回到这些计算机。

SearchBase 参数定义搜索的“开始”。它不是从域的根目录开始搜索,而是告诉 PowerShell 从 OU 开始搜索。

要使用 SearchBase 参数,您需要指定 OU 的专有名称 (DN)。下面是查找 company.pri 域中的域控制器 OU 中的所有计算机帐户的示例。

Get-ADComputer -Filter * -SearchBase 'OU=Domain Controllers, DC=company, DC=pri'

获取子 OU 中的帐户

当您使用 SearchBase 参数时,PowerShell 仅返回该特定 OU 中的计算机帐户。它不会返回任何子 OU 中的计算机帐户。为此,您可以使用 SearchScope 参数。

SearchScope 参数允许您定义从父 OU 查找的深度。此参数具有三个可能的值 - 012。默认情况下,它设置为 0 并且仅返回基本 OU 中的计算机。

如果需要在基本 OU 和直接子 OU 中递归搜索,可以使用 1 值。不过,这里最常见的值是 2 ,表示递归搜索所有子、孙和更深的 OU。

Get-ADComputer -Filter * -SearchBase 'OU=Domain Controllers, DC=company, DC=pri' -SearchScope 2

概括

Get-AdComputer 是一个方便的 cmdlet,用于查找有关 AD 计算机帐户的信息。您面临的最大挑战不是学习如何使用 Get-AdComputer,而是弄清楚过滤语法。如果您阅读上面链接的过滤器文章,您会发现它可能会变得复杂。

一旦掌握了过滤器,您就可以轻松地从 AD 计算机帐户中提取所需的尽可能多的信息!

这些是当今此 cmdlet 的一些最常见用例。有关完整的详细信息,请查看 Microsoft 文档。

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

取消回复欢迎 发表评论:

关灯