Find-SCComputer

通过查询 Active Directory 搜索计算机,并返回计算机对象。

语法

Find-SCComputer
    [-VMMServer <ServerConnection>]
    [-ComputerNameFilter <String>]
    -Domain <String>
    -Credential <VMMCredential>
    [-ExcludeVMMHost]
    [-ExcludeVMMLibrary]
    [-ExcludeVMs]
    [-FindHyperVHost]
    [-DiscoveryID <Guid>]
    [-RunAsynchronously]
    [-JobVariable <String>]
    [<CommonParameters>]
Find-SCComputer
    [-VMMServer <ServerConnection>]
    [-ComputerName] <String>
    [-Credential <VMMCredential>]
    [-ExcludeVMMHost]
    [-ExcludeVMMLibrary]
    [-DiscoveryID <Guid>]
    [-RunAsynchronously]
    [<CommonParameters>]
Find-SCComputer
    [-VMMServer <ServerConnection>]
    -Domain <String>
    -ADSearchFilter <String>
    -Credential <VMMCredential>
    [-ExcludeVMMHost]
    [-ExcludeVMMLibrary]
    [-ExcludeVMs]
    [-FindHyperVHost]
    [-DiscoveryID <Guid>]
    [-RunAsynchronously]
    [-JobVariable <String>]
    [<CommonParameters>]
Find-SCComputer
    [-VMMServer <ServerConnection>]
    -IPAddressRangeStart <String>
    -IPAddressRangeEnd <String>
    -BMCProtocol <OutOfBandManagementType>
    [-BMCCustomConfigurationProvider <ConfigurationProvider>]
    [-BMCPort <Int32>]
    -BMCRunAsAccount <RunAsAccount>
    [-All]
    [-DiscoveryID <Guid>]
    [-RunAsynchronously]
    [-JobVariable <String>]
    [<CommonParameters>]
Find-SCComputer
    [-VMMServer <ServerConnection>]
    -Subnet <String>
    -BMCProtocol <OutOfBandManagementType>
    [-BMCCustomConfigurationProvider <ConfigurationProvider>]
    [-BMCPort <Int32>]
    -BMCRunAsAccount <RunAsAccount>
    [-All]
    [-DiscoveryID <Guid>]
    [-RunAsynchronously]
    [-JobVariable <String>]
    [<CommonParameters>]
Find-SCComputer
    [-VMMServer <ServerConnection>]
    -BMCAddress <String>
    -BMCProtocol <OutOfBandManagementType>
    [-BMCCustomConfigurationProvider <ConfigurationProvider>]
    [-BMCPort <Int32>]
    -BMCRunAsAccount <RunAsAccount>
    [-SMBiosGuid <Guid>]
    [-DeepDiscovery]
    [-DiscoveryID <Guid>]
    [-RunAsynchronously]
    [-JobVariable <String>]
    [<CommonParameters>]

说明

Find-SCComputer cmdlet 通过查询 Active Directory 搜索一个或多个计算机,并返回计算机对象。

您可以使用此 cmdlet 在 Active Directory 中基于指定的条件或条件组合查询计算机,查询条件包括:

  • 计算机的 FQDN) 的完全限定域名 (。

  • 计算机名称的所有或部分。

  • 域的名称。

  • 除 Virtual Machine Manager 管理的主机之外的所有计算机 (VMM) 。

  • 除 VMM 管理的库服务器之外的所有计算机。

  • 仅 Hyper-V 主机。

  • 带外控制器的裸机计算机。

注意:如果将位于 Active Directory 域的新计算机(例如主机或库服务器)添加到 VMM,然后立即运行 Discover-Computer cmdlet,则 cmdlet 在搜索 Active Directory 时可能不会立即发现新计算机。 可能会发生此延迟,因为有关新计算机的数据可能尚未在 Active Directory 域中复制。 如果您是域管理员,则可以使用 Active Directory 站点和服务控制台立即强制执行该数据的复制。

示例

示例 1:搜索满足指定条件的特定域中的计算机

PS C:\> $RunAsAccount = Get-SCRunAsAccount -Name "Host Computer Account 01"
PS C:\> Find-SCComputer -ComputerNameFilter "host" -Domain "Contoso.com" -FindHyperVHosts -ExcludeVMMHost -RunAsAccount $RunAsAccount

第一个命令获取名为“主机计算机帐户 01”的运行方式帐户对象,并将该对象存储在$RunAsAccount变量中。

第二个命令查询 Active Directory 并返回位于 Contoso.com 域中的计算机的 Hyper-V 计算机对象列表,这些计算机的名称以“host”开头,不由 VMM 管理。 处理此命令时,$RunAsAccount为 Find-SCComputer 提供凭据。

注意:将 Find-SCComputerDomain 参数一起使用时,必须指定完全限定的域名。

示例 2:按名称搜索特定计算机并在 Active Directory 中验证其属性

PS C:\> Find-SCComputer -ComputerName "VMHost01.Contoso.com"

此命令使用名为 VMHost01 的计算机 (FQDN) 的完全限定域名在 Active Directory 中查找此计算机,返回计算机对象,并向用户显示计算机对象属性。

示例 3:搜索指定域中不是 VMM 库服务器的所有计算机

PS C:\> $RunAsAccount = Get-SCRunAsAccount -Name "Host Computer Account 01"
PS C:\> Find-SCComputer -ComputerNameFilter "vmm" -Domain "Contoso.com" -ExcludeVMMLibrary -RunAsAccount $RunAsAccount

第一个命令获取名为“主机计算机帐户 01”的运行方式帐户对象,并将该对象存储在$RunAsAccount变量中。

第二个命令将查询 Active Directory 中 Contoso.com 域中包括“vmm”的计算机名称中的所有计算机,但 VMM 库服务器除外。 处理此命令时,$RunAsAccount为 Find-SCComputer 提供凭据。

示例 4:使用 Active Directory 查询查找指定域中的所有非托管计算机

PS C:\> $RunAsAccount = Get-SCRunAsAccount -Name "Host Computer Account 01"
PS C:\> Find-SCComputer -ADSearchFilter "(&(sAMAccountType=805306369)(name=Test0*)(objectCategory=computer)(objectClass=computer)(operatingSystem=Windows\20Server\202008\20R2*))" -Domain "Contoso.com" -ExcludeVMMLibrary -ExcludeVMMHost -RunAsAccount $RunAsAccount

第一个命令获取名为“主机计算机帐户 01”的运行方式帐户对象,并将该对象存储在$RunAsAccount变量中。

第二个命令查询符合查询条件的 Contoso.com 域中所有计算机的 Active Directory:任何以 Test0 开头但不是 VMM 库服务器或 VMM 主机的名称的 Windows Server 2008 R2 计算机。 处理此命令时,$RunAsAccount为 Find-SCComputer 提供凭据。

示例 5:查找具有位于特定网络范围内的带外控制器的裸机计算机

PS C:\> $BMCRunAsAccount = Get-SCRunAsAccount "BMC Account 01"
PS C:\> Find-SCComputer -BMCAddress "10.10.0.1" -BMCRunAsAccount $BMCRunAsAccount -BMCProtocol "IPMI"

第一个命令获取名为 BMC 帐户 01 的运行方式帐户对象,并将对象存储在$BMCRunAsAccount变量中。

第二个命令使用指定的 BMCAddress 扫描网络中的物理计算机。 处理此命令时,$BMCRunAsAccount提供 Find-SCComputer 的凭据。

示例 6:在支持裸机计算机的物理计算机上执行深度发现

PS C:\> $BMCRunAsAccount = Get-SCRunAsAccount "BMC Account 01"
PS C:\> $MyComputer01 = Find-SCComputer -BMCAddress "10.10.0.1" -BMCRunAsAccount $BMCRunAsAccount -BMCProtocol "IPMI" 
PS C:\> $MyComputer01 = Find-SCComputer -DeepDiscovery -BMCAddress $MyComputer01.BMCAddress -BMCRunAsAccount $BMCRunAsAccount -BMCProtocol "IPMI" -SMBIOSGUID $MyComputer01.SMBIOSGUID
PS C:\> $MyComputer01

第一个命令获取名为 BMC 帐户 01 的运行方式帐户对象,并将对象存储在$BMCRunAsAccount变量中。

第二个命令使用指定的 BMCAddress 扫描网络中的物理计算机。 处理此命令时,$BMCRunAsAccount提供 Find-SCComputer 的凭据。

第三个命令对计算机对象执行深层发现,并将物理计算机对象返回到 $MyComputer 01 变量。

最后一个命令显示存储在 $MyComputer 01 变量中的计算机对象的属性。

参数

-ADSearchFilter

定义用于发现的 Active Directory 查询。 使用此参数指定包含 Active Directory 域信息和搜索筛选器的查询。

示例格式: -ADSearchFilter``"(&(sAMAccountType=805306369)(name=katarina*)(objectCategory=computer)(objectClass =computer)(operatingSystem=Windows\20Server*))"

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-All

指示此 cmdlet 获取独立于父对象的所有从属对象。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BMCAddress

指定或更新特定物理计算机的带外基板管理控制器 (BMC) 地址。 这可能是 IP 地址、 (FQDN) 的完全限定域名,或 DNS 前缀 (通常与 NetBIOS 名称) 的名称相同。

通常,BMC 地址及其与网络的连接与与标准网络适配器关联的 IP 地址分开。 或者,某些计算机确实使用标准网络适配器为 BMC 和网络适配器提供单个地址。 但是,BMC 地址具有唯一的端口,因此在网络上唯一可识别。

IPv4 格式示例: -BMCAddress "10.0.0.21"

Ipv6 格式示例: -BMCAddress "2001:4898:2a:3:657b:9c7a:e1f0:6829"

示例 FQDN 格式: -BMCAddress "Computer01.Contoso.com"

NetBIOS 格式示例: -BMCAddress "Computer01"

注意:默认情况下,VMM 对 BMC 地址使用 IP 地址或 FQDN。 但是,还可以创建一个 PowerShell 模块,使你可以将其他类型的地址指定为 BMC 地址。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-BMCCustomConfigurationProvider

指定或更新基板管理控制器的配置提供程序对象, (BMC) 。 配置提供程序是 VMM 的插件,用于将 VMM PowerShell 命令转换为特定于类型基板管理控制器的 API 调用。 此参数应与自定义 BMCProtocol 一起使用。

Type:ConfigurationProvider
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BMCPort

指定或更新特定物理计算机的带外基板管理控制器 (BMC) 端口。 BMC 端口也称为服务处理器端口。 示例默认端口为 623(对于 IPMI)和 443,用于通过 WS-Man 进行 SMASH。

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BMCProtocol

指定或更新 VMM 用来与带外基板管理控制器通信的协议, (BMC) 。 有效值为:

  • IPMI
  • 粉碎
  • 自定义

BMC (也称为服务处理器或管理控制器) 是服务器主板上的专用控制器,它充当硬件和系统管理软件之间的接口。 如果物理计算机的主板包括 BMC,则当计算机插入 (它是否关闭或开机,以及操作系统是否安装) ,系统硬件的相关信息以及系统硬件运行状况的状态可用。

示例格式: -BMCProtocol "Custom"

注意:自定义协议要求使用 BMCCustomConfigurationProvider 参数。

Type:OutOfBandManagementType
Accepted values:IPMI, SMASH, Custom
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-BMCRunAsAccount

指定要与基板管理控制器一起使用的运行方式帐户, (BMC) 设备。

Type:RunAsAccount
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

指定 VMM 可以在您的网络上唯一标识的计算机的名称。 此参数的可接受值为:

  • FQDN
  • IPv4 或 IPv6 地址
  • NetBIOS 名称
Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ComputerNameFilter

指定 cmdlet 将尝试在 Active Directory 中发现的计算机的部分名称或全名。

示例格式: -ComputerNameFilter "host"

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

指定凭据对象,或者,对于某些 cmdlet,一个运行方式帐户对象,该对象包含有权执行此操作的帐户的用户名和密码。 或者,在 Restart-SCJob 的情况下,有权完成重启的任务。

有关 PSCredential 对象的详细信息,请键入 Get-Help Get-Credential

有关运行方式帐户的详细信息,请键入 Get-Help New-SCRunAsAccount

Type:VMMCredential
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-DeepDiscovery

指示深度发现用于指定计算机。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DiscoveryID

仅供内部使用(不要在您的代码中使用)。

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Domain

为 Active Directory 域指定完全限定的域名 (FQDN)。

示例格式: -Domain "Domain01.Corp.Contoso.com"

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ExcludeVMMHost

排除 VMM 当前管理的虚拟机主机。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ExcludeVMMLibrary

排除 VMM 当前管理的库服务器。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ExcludeVMs

排除虚拟机。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FindHyperVHost

搜索运行 Windows Server 2008 或更高版本的计算机,并启用 Hyper-V 服务器角色。

Type:SwitchParameter
Aliases:FindHyperVHosts
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IPAddressRangeEnd

指定一系列 IP 地址中的最后一个 IP 地址。 与 IPAddressRangeStart 参数一起使用。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-IPAddressRangeStart

指定一系列 IP 地址中的第一个 IP 地址。 与 IPAddressRangeEnd 参数一起使用。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-JobVariable

指定跟踪作业进度,并将其存储在此参数命名的变量中。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunAsynchronously

指示作业以异步方式运行,以便控件立即返回到命令 shell。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SMBiosGuid

为与 VMM 中该物理计算机关联的物理计算机指定系统管理 BIOS 全局唯一标识符 (SMBIOS GUID) 。

SMBIOS 定义数据结构和访问方法,使用户或应用程序能够在此计算机上存储和检索有关硬件的信息,例如系统名称、制造商或系统 BIOS 版本。 Windows 操作系统在系统启动时检索 SMBIOS 数据,并使这些数据可供程序使用。

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Subnet

在无类Inter-Domain路由 (CIDR) 表示法中指定 IP 子网 (IPv4 或 IPv6) 。

IPv4 子网的示例格式: 192.168.0.1/24

IPv6 子网的示例格式: FD4A:29CD:184F:3A2C::/64

注意:IP 子网不能与主机组或子主机组中的任何其他子网重叠。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-VMMServer

指定VMM 服务器对象。

Type:ServerConnection
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

输出

Computer

此 cmdlet 返回 Computer 对象。