繁体   English   中英

WMI查询子域中的DNS CNAME

[英]WMI Query DNS CNAME in subdomains

我正在尝试使用WMI查询在C#中编写以下PowerShell脚本。

    Get-DnsServerZone -ComputerName [DNS Server] | ? {$_.zonename} | Get-DnsServerResourceRecord -ComputerName [DNS Server] -RRType CNAME | ? {$_.Hostname -like "$DNSCname*"} | Format-Table

此代码段将查询DNS并返回所有区域,并将结果通过管道传送到Get-DnsServerResourceRecord,然后Get-DnsServerResourceRecord将返回存在别名的所有记录(及其别名)。

例如:$ DNSCname ='ABCXYZ'

结果是:

ABCXYZ.domain1.com
ABCXYZ123.subdomain.domain1.com
ABCXYZ456.subdomain.domain2.com

不幸的是,以下WMI查询对我不起作用。

    "SELECT * FROM MicrosoftDNS_ResourceRecord WHERE OwnerName LIKE '%ABCXYZ%'"

有没有一种方法可以编写WMI查询,该查询将返回与PowerShell脚本相同的结果?

我99%确信此提供程序不支持这种过滤方式(但我找不到参考)。 您必须获取所有这些内容并将其过滤到代码中,这恰好是PowerShell代码中发生的事情(您要让cmdlet本身是WMI对象的一个​​薄包装,返回所有结果,然后然后使用? / Where-Object进行过滤)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM