当前位置: 首页 > news >正文

检测 win10 硬件部分的 小脚本

1.新建 win10.ps1 保留为 ansi

运行

powershell -ExecutionPolicy Bypass -File "C:\Users\hp\Desktop\win10.ps1"

2.代码

<# .SYNOPSIS 收集 Windows 10 系统的详细硬件信息并生成报告。 .DESCRIPTION 获取 CPU、内存、硬盘、电池、网卡等硬件的规格和状态信息。 结果以表格形式在控制台显示,并可选择导出为 CSV 或文本文件。 #> # --- 1. 基本信息 (OS, 主板, BIOS) --- Write-Host "=== 系统与主板基本信息 ===" -ForegroundColor Cyan Get-ComputerInfo -Property "Cs*", "Bios*", "Os*" | Select-Object CsManufacturer, CsModel, CsProcessors, CsTotalPhysicalMemory, BiosManufacturer, BiosVersion, BiosSMBIOSBIOSVersion, OsName, OsVersion, OsBuildNumber, WindowsInstallationType # --- 2. CPU 详细信息 --- Write-Host "`n=== CPU 信息 ===" -ForegroundColor Cyan Get-CimInstance -ClassName Win32_Processor | Select-Object Name, Description, MaxClockSpeed, NumberOfCores, NumberOfLogicalProcessors, SocketDesignation, Manufacturer # --- 3. 物理内存 (品牌、频率、大小) --- Write-Host "`n=== 物理内存信息 ===" -ForegroundColor Cyan # 注意:内存品牌和频率可能因硬件和驱动支持情况而显示不全 Get-CimInstance -ClassName CIM_PhysicalMemory | Select-Object BankLabel, Capacity, Speed, Manufacturer, PartNumber, MemoryType # 内存总量 (GB) $totalMemoryGB = [math]::Round((Get-CimInstance Win32_ComputerSystem).TotalPhysicalMemory / 1GB, 2) Write-Host "总物理内存: $totalMemoryGB GB" -ForegroundColor Yellow # --- 4. 磁盘与固态硬盘 (大小、品牌、健康度) --- Write-Host "`n=== 磁盘与固态硬盘信息 ===" -ForegroundColor Cyan # 物理磁盘信息 (包含型号、大小、健康状态) # Get-PhysicalDisk 在 PowerShell 5.1 (Win10) 中可用,提供更详细的健康状态 Get-PhysicalDisk | Select-Object FriendlyName, Manufacturer, Model, Size, MediaType, HealthStatus, OperationalStatus # 逻辑分区空间使用情况 Write-Host "`n--- 逻辑分区使用情况 ---" -ForegroundColor Yellow Get-CimInstance -ClassName Win32_LogicalDisk -Filter "DriveType=3" | ForEach-Object { $sizeGB = [math]::Round($_.Size / 1GB, 2) $freeGB = [math]::Round($_.FreeSpace / 1GB, 2) $freePercent = [math]::Round(($_.FreeSpace / $_.Size) * 100, 2) [PSCustomObject]@{ 盘符 = $_.DeviceID 总大小_GB = $sizeGB 可用空间_GB = $freeGB 可用百分比 = "$freePercent%" } } # --- 5. 电池信息 (笔记本电脑) --- Write-Host "`n=== 电池信息 ===" -ForegroundColor Cyan $battery = Get-CimInstance -ClassName Win32_Battery if ($battery) { $battery | Select-Object Name, Manufacturer, SerialNumber, Chemistry, DesignCapacity, FullChargeCapacity, BatteryStatus, EstimatedChargeRemaining, EstimatedRunTime } else { Write-Host "未检测到电池 (可能为台式机)。" -ForegroundColor Yellow } # --- 6. Wi-Fi 网卡信息 --- Write-Host "`n=== Wi-Fi 网卡信息 ===" -ForegroundColor Cyan # 查找名称中包含 Wireless, Wi-Fi, WLAN, 802.11 的网络适配器 $wifiAdapters = Get-CimInstance -ClassName Win32_NetworkAdapter | Where-Object { $_.Name -match "Wireless|Wi-Fi|WLAN|802.11" -and $_.NetEnabled -eq $true } if ($wifiAdapters) { $wifiAdapters | ForEach-Object { $adapter = $_ $ipConfig = $adapter | Get-CimAssociatedInstance -ResultClassName Win32_NetworkAdapterConfiguration [PSCustomObject]@{ 名称 = $adapter.Name MAC地址 = $adapter.MACAddress 速度_Mbps = $adapter.Speed / 1000000 DHCP启用 = $ipConfig.DHCPEnabled IP地址 = $ipConfig.IPAddress -join ", " 子网掩码 = $ipConfig.IPSubnet -join ", " 默认网关 = $ipConfig.DefaultIPGateway -join ", " } } } else { Write-Host "未检测到已启用的 Wi-Fi 网卡。" -ForegroundColor Yellow } # --- 7. 总结与导出选项 --- Write-Host "`n=== 报告生成完成 ===" -ForegroundColor Green $exportChoice = Read-Host "是否导出报告为CSV文件? (Y/N)" if ($exportChoice -eq 'Y' -or $exportChoice -eq 'y') { $csvPath = "$env:USERPROFILE\Desktop\Hardware_Report_$(Get-Date -Format 'yyyyMMdd_HHmmss').csv" # 为了便于导出,将之前输出的信息重新组织为对象 (此处仅为示例,实际可优化) Write-Host "正在导出... (请稍候,此功能可进一步定制)" -ForegroundColor Gray # 注:此处简化处理,实际生产中建议将所有信息整合到一个对象中再Export-Csv # 由于脚本中包含了多种格式的输出,完整导出需要更复杂的逻辑。 # 你可以考虑使用 'Get-CimInstance' 的数据直接导出,或者使用 'Out-File' 保存文本报告。 Write-Host "提示: 你可以使用 'Get-CimInstance ... | Export-Csv' 命令单独导出各部分数据。" -ForegroundColor Yellow }
http://www.jsqmd.com/news/1108037/

相关文章:

  • 终极解决方案:Reset Windows Update Tool完全修复Windows更新故障指南
  • 《Claude Code 工程化实战》第 7 讲 可写型子代理实战
  • 勒索病毒解密工具实战指南:从识别到恢复的完整流程
  • 【Springboot毕设全套源码+文档】基于Java+springboot个人健康管理系统的设计与实现(丰富项目+远程调试+讲解+定制)
  • TLS双向认证实战:从“裸奔通信“到硬件级加密通道
  • VMware中安装CentOS Stream总失败?这7个隐藏报错代码(如0x0000007B、dracut-initqueue timeout)你一定见过!
  • VMware Workstation Pro 17 + Docker Desktop 4.3实战部署(企业级隔离环境配置全披露)
  • Windows苹果USB网络共享驱动一键安装:3分钟解决iPhone热点连接难题
  • Oracle实战四大神器:CASE WHEN、EXISTS、WITH、MERGE 精简合集(HIS生产可用)
  • AI编程助手使用指南:避免技术依赖陷阱
  • VMware Tools安装失败?93%的运维工程师都忽略的3个隐藏配置陷阱(附诊断脚本下载)
  • PLM,ERP,MES,揭秘制造业“三位一体”的终极变革!
  • Luma API第三方服务实战:成本优化与视频生成技巧
  • Spek:3分钟学会用免费频谱分析器检测音频质量
  • Windows 10/11苹果USB驱动一键安装:iPhone网络共享终极解决方案
  • 终极指南:5步实现Navicat Premium macOS无限试用期重置
  • 【VMware Tools核心价值白皮书】:20年虚拟化专家亲授——97%管理员忽略的5大性能增益点与3类致命误配场景
  • KMS智能激活脚本:3步搞定Windows和Office永久激活的完整方案
  • 【CANdelaStudio-从入门到深入到实战】91 如何用Python自动化生成ODX模板(节省80%开发时间)
  • 终极免费换肤体验:R3nzSkin国服换肤工具完整指南
  • 驱动级优化,还是鸡肋组件?——从内核模块源码层解析vmtoolsd进程真实作用,90%企业从未启用的3项隐藏功能
  • 如何5分钟完成Windows和Office永久激活:KMS_VL_ALL_AIO终极免费解决方案
  • CentOS Stream 9 on VMware:实测对比VMware Tools 12.3.0 vs 12.4.1对磁盘I/O提升达47.6%,附兼容性矩阵表
  • MATLAB图表导出革命:export_fig工具箱让科研图表输出专业高效
  • Windows和Office激活终极解决方案:5分钟永久告别激活烦恼
  • VMware Ubuntu双网卡配置失效?立即执行这7个诊断命令,3分钟定位是vmxnet3驱动问题还是netplan YAML缩进错误
  • 易信外汇:从工具体验看经纪商服务的稳健表现
  • VMware Tools停更预警:open-vm-tools已成生产环境标配?3个关键指标决定你是否该立即切换
  • 大厂Java面试中容易忽视的基础问题
  • 团体心理疗愈的好处