如何用PowerShell脚本优化含SSD和HDD的电脑所有驱动器
优化多驱动器的PowerShell脚本
以下是能满足需求的脚本,它会遍历所有固定磁盘驱动器(自动忽略DVD等可移动/光学驱动器),根据每个驱动器对应的物理磁盘类型执行适配的优化操作:
Write-Host "开始优化所有固定驱动器..." -ForegroundColor Cyan # 获取所有固定逻辑驱动器(排除DVD、可移动磁盘等非固定存储) $fixedVolumes = Get-Volume | Where-Object { $_.DriveType -eq 'Fixed' -and $_.DriveLetter -ne $null } foreach ($volume in $fixedVolumes) { $driveLetter = $volume.DriveLetter Write-Host "`n正在处理驱动器 $driveLetter`:" -ForegroundColor Yellow # 关联逻辑卷到对应的物理磁盘,判断介质类型 $physicalDisk = Get-Partition -DriveLetter $driveLetter | Get-Disk | Get-PhysicalDisk if ($physicalDisk.MediaType -eq 'SSD') { Write-Host "检测到SSD,执行ReTrim操作..." Optimize-Volume -DriveLetter $driveLetter -ReTrim -Verbose } elseif ($physicalDisk.MediaType -eq 'HDD') { Write-Host "检测到HDD,执行磁盘碎片整理操作..." Optimize-Volume -DriveLetter $driveLetter -Defrag -Verbose } else { Write-Host "无法识别磁盘类型,跳过优化。" -ForegroundColor Red } } Write-Host "`n所有驱动器优化完成!" -ForegroundColor Green
脚本核心特性:
- 自动过滤非固定存储:仅处理内置的SSD/HDD,完全忽略DVD、USB移动盘等
- 精准匹配磁盘类型:通过逻辑卷关联到物理磁盘,避免单台机器多磁盘时的判断错误
- 适配性操作:SSD执行
ReTrim维护性能,HDD执行Defrag提升读写效率 - 可视化进度:通过不同颜色的控制台输出,清晰跟踪每个驱动器的处理状态
内容的提问来源于stack exchange,提问作者Invictus
相关产品推荐
相关产品推荐

