You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何使用dsquery在Active Directory中检索指定的多个操作系统?

如何用dsquery同时查询Windows 2003和2008 Server的计算机

没问题,你只需要调整LDAP过滤器,用**逻辑或(|)**操作符把两个操作系统的条件组合起来,就能在一次查询中精准匹配这两类服务器。

完整查询命令

dsquery * domainroot -filter "(&(objectCategory=Computer)(objectClass=Computer)(|(operatingSystem=Windows Server 2003*)(operatingSystem=Windows Server 2008*)))"

过滤器逻辑拆解

  • (&(objectCategory=Computer)(objectClass=Computer)):这部分和你原来的命令一致,确保只查询AD中的计算机对象,排除其他类型的条目干扰。
  • (|(operatingSystem=Windows Server 2003*)(operatingSystem=Windows Server 2008*)):这里用|表示“或”逻辑,匹配操作系统名称以Windows Server 2003开头,或者以Windows Server 2008开头的计算机。末尾加通配符*是为了兼容子版本(比如R2、SP1等带后缀的系统)。

可选优化:直接查看详细属性

如果想一次性获取计算机的名称、完整系统版本等信息,可以把dsquery的结果管道给dsget工具:

dsquery * domainroot -filter "(&(objectCategory=Computer)(objectClass=Computer)(|(operatingSystem=Windows Server 2003*)(operatingSystem=Windows Server 2008*)))" | dsget computer -dn -samid -operatingsystem

这条命令会返回计算机的可分辨名称SAM账户名完整操作系统版本,不用再手动二次查询。

内容的提问来源于stack exchange,提问作者JeffR

火山引擎 最新活动