Get-ADComputer:在Active Directory中查找计算机组织单元

今天的 cmdlet,我们将专注于 Get-AdComputer。这个 cmdlet 是 Get-AdUser 的兄弟。与从 Active Directory(AD)获取用户不同,这个 cmdlet 在组织单位中查找计算机。

你会在 ActiveDirectory PowerShell 模块中找到 Get-AdComputer cmdlet。如果你还没有安装它,请查看这里的方法这里

基础知识

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

Identity 参数

在其最基本的形式下,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 Identity 参数一样,你还可以指定分明名称(DN),GUID 或 SID。

Filter 参数

如果您需要查找多个计算机帐户,请使用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域中查找Domain Controllers 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文档

Source:
https://adamtheautomator.com/get-adcomputer/