我是一家公司的 IT 技术员,该公司拥有大约 600 台 Windows 7 笔记本电脑,分布在 8 个国家/地区。我们使用 Microsoft SCCM 2012 来管理客户端。
我们的硬盘反复出现问题,它们往往会在 c:\windows\temp 目录中积累数百 GB 的数据,并且由于这些文件是由具有管理员权限的进程创建的,因此用户无法清理它们。
因此我创建了这个批处理来检查可用磁盘百分比,如果它小于 30%,则继续清理:
@echo off
for /f "usebackq delims== tokens=2" %%x in (`wmic logicaldisk where "DeviceID='C:'" get FreeSpace /format:value`) do set FreeSpace=%%x
for /f "usebackq delims== tokens=2" %%x in (`wmic logicaldisk where "DeviceID='C:'" get Size /format:value`) do set Size=%%x
set FreeMB=%FreeSpace:~0,-6%
set SizeMB=%Size:~0,-6%
set /a Percentage=100 * FreeMB / SizeMB
IF %percentage% LSS 30 del c:\windows\temp\*.* /Q
该脚本将通过SCCM2012运行,并且应每月在每个客户端上运行一次。
虽然这批货肯定会起作用,但有人有更优雅的解决方案吗?
谢谢