Windows 怎么使用 PowerShell 检查域内所有计算机的操作系统版本

千浩大大_3528

千浩大大_3528

2026-09-10

1013人浏览

原创

powershell批量检查域内计算机操作系统版本需分三步:先用get-adcomputer获取启用设备列表,再用get-ciminstance远程查询win32_operatingsystem类获取真实os信息,最后通过构建号映射函数转换为易读版本(如“windows 11 23h2”),支持导出csv与分组统计。

windows 怎么使用 powershell 检查域内所有计算机的操作系统版本

用 PowerShell 批量检查域内所有计算机的操作系统版本,核心是结合 Active Directory 查询 + 远程系统信息获取。关键在于先列出启用的计算机,再安全、高效地收集其 OS 版本,避免因离线或权限问题中断整体任务。

一、确认域环境并获取计算机列表

确保当前账户有读取域计算机对象的权限(如 Domain Users 或更高)。使用 Get-ADComputer 获取启用的、非服务器类(可选过滤)的计算机:

  • 基础命令(需安装 RSAT Active Directory 模块):
    Get-ADComputer -Filter {Enabled -eq $true} -Property Name,OperatingSystem,OperatingSystemVersion | Select-Object Name,OperatingSystem,OperatingSystemVersion
  • 若想跳过已知不可达设备,加 -SearchBase 限定 OU 范围,减少扫描范围
  • 注意:该方式依赖 AD 中缓存的 OperatingSystem 属性,可能滞后或为空(尤其老旧设备),不能替代实际查询

二、远程获取真实操作系统版本(推荐组合方案)

对每台计算机执行远程 WMI 或 CIM 查询,获取准确的 Win32_OperatingSystem 类信息。推荐使用 Get-CimInstance(比 Get-WmiObject 更现代、支持 CIM session 重用):

windows-healing-gateway
windows-healing-gateway

通过任务计划程序自动监控并自修复 Windows 上的 OpenClaw Gateway,具备 AI 诊断和 Telegram 报警功能。

下载
  • 单机测试(验证连通性与权限):
    Get-CimInstance -ClassName Win32_OperatingSystem -ComputerName "PC001" | Select-Object CSName, Caption, Version, BuildNumber, ServicePackMajorVersion
  • 批量执行(带错误处理):
    用 ForEach-Object 遍历计算机名列表,对每台尝试连接;加 -ErrorAction SilentlyContinue 跳过失败项;用 Select-Object 提取关键字段
  • 示例片段:
    $computers = Get-ADComputer -Filter {Enabled -eq $true} -Property Name | Select-Object -ExpandProperty Name
    $results = foreach ($comp in $computers) {
      try {
        Get-CimInstance -ClassName Win32_OperatingSystem -ComputerName $comp -ErrorAction Stop |
          Select-Object @{n='ComputerName';e={$comp}}, Caption, Version, BuildNumber
      } catch { [PSCustomObject]@{ComputerName=$comp; Caption='Offline or Access Denied'; Version='N/A'; BuildNumber='N/A'} }
    }

三、补充:构建号转易读版本(如 Windows 10/11)

BuildNumber(如 19045、22621)不易识别,可用自定义映射函数提升可读性:

  • 定义转换函数(例如):
    function Convert-BuildToOS { param($build)
    switch ($build) {
      19045 { 'Windows 10 22H2' }
      22621 { 'Windows 11 22H2' }
      22631 { 'Windows 11 23H2' }
      default { "Build $build" }
    }
  • 在结果中调用:
    $results | ForEach-Object { $_ | Add-Member -NotePropertyName FriendlyOS -NotePropertyValue (Convert-BuildToOS $_.BuildNumber) -PassThru }
  • 微软官方构建号对照表可查 Microsoft Learn 文档,建议定期更新该映射表

四、导出与后续处理

结果整理后,便于归档或分析:

  • 输出到屏幕并按版本分组:
    $results | Group-Object FriendlyOS | Sort-Object Count -Descending
  • 导出为 CSV(含时间戳):
    $results | Export-Csv -Path "$env:USERPROFILE\Desktop\AD_OS_Report_$(Get-Date -Format 'yyyyMMdd').csv" -NoTypeInformation
  • 如需快速筛选 Windows 11 设备:
    $results | Where-Object {$_.Caption -like "*Windows 11*"}

相关专题

更多
视频服务器配置参数有哪些
视频服务器配置参数有哪些

视频服务器配置参数有处理器、内存、存储、视频编解码器、网络接口、视频输入输出接口、操作系统、安全性、环境适应性和成本。在搭建视频服务器时,需要根据实际需求和预算,合理选择这些参数,以实现高性能、高稳定性和低成本的目标。

2023.10.17

3780

11

linux的操作系统介绍
linux的操作系统介绍

Linux是一个灵活、稳定、安全的操作系统,适用于各种不同的应用场景,从个人电脑到服务器和嵌入式系统。想了解更多Linux的相关内容,可以阅读本专题下面的文章。

2024.03.20

3046

12

Linux操作系统的主要用途
Linux操作系统的主要用途

Linux操作系统用途广泛,包括:服务器运营,软件开发,科学研究和教育,嵌入式系统,以及个人电脑和笔记本电脑。想了解更多Linux的相关内容,可以阅读本专题下面的文章。

2024.03.21

5059

8

linux操作系统的作用
linux操作系统的作用

linux操作系统在以下领域发挥着关键作用:服务器和云计算;嵌入式系统;个人电脑和笔记本电脑;超级计算;其他领域等等。想了解更多linux操作系统的相关内容,可以阅读本专题下面的文章。

2024.04.12

2375

5

有哪些常见的网络操作系统
有哪些常见的网络操作系统

常见的网络操作系统有windows server、linux、unix、macos server、freebsd、cisco ios、juniper junos和hp-ux等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.09.12

2944

6

32位操作系统怎么改成62位的
32位操作系统怎么改成62位的

要将 32 位操作系统升级到 64 位,需要遵循以下步骤:1. 检查硬件和软件兼容性;2. 备份数据;3. 获取 64 位操作系统;4. 创建可启动安装媒体;5. 从安装媒体启动计算机;6. 选择“升级”选项;7. 完成安装。

2025.04.02

3183

9

服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

417

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

840

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2432

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
HBuilderX Windows 安装手册
HBuilderX Windows 安装手册

共0课时 | 0人学习

phpEnv手册
phpEnv手册

共0课时 | 0人学习

好课诞生记
好课诞生记

共20课时 | 7.1万人学习