Windows脚本清理C盘缓存

方法一:使用power文件.ps1的文件

脚本功能

  1. 清理临时文件夹:

    • 当前用户的临时文件夹(%Temp%)。
    • 系统临时文件夹(C:\Windows\Temp)。
  2. 清理 Windows 更新缓存:

    • 删除 Windows 更新下载缓存(C:\Windows\SoftwareDistribution\Download)。
  3. 清空回收站:

    • 调用系统接口清空所有用户的回收站。
  4. 清理 Internet Explorer 和 Edge 浏览器缓存:

    • 删除浏览器历史记录、Cookie 和缓存文件。
  5. 清理 Prefetch 文件夹:

    • 删除 Windows 的预取文件(C:\Windows\Prefetch)。
  6. 清理系统日志文件(可选):

    • 清理事件日志文件。
# 清理 Windows 缓存和垃圾文件
Write-Host "开始清理 Windows 缓存和垃圾文件..." -ForegroundColor Green# 设置错误处理
$ErrorActionPreference = "SilentlyContinue"# 清理临时文件夹
Write-Host "清理临时文件夹..." -ForegroundColor Cyan
$TempPaths = @("$env:Temp",                          # 当前用户的临时文件夹"$env:SystemRoot\Temp"                # 系统的临时文件夹
)
foreach ($Path in $TempPaths) {if (Test-Path $Path) {Get-ChildItem -Path $Path -Recurse -Force | Remove-Item -Force -Recurse -ErrorAction SilentlyContinueWrite-Host "已清理:$Path" -ForegroundColor Yellow} else {Write-Host "路径不存在:$Path" -ForegroundColor Gray}
}# 清理 Windows 更新缓存
Write-Host "清理 Windows 更新缓存..." -ForegroundColor Cyan
$WindowsUpdateCache = "$env:SystemRoot\SoftwareDistribution\Download"
if (Test-Path $WindowsUpdateCache) {Get-ChildItem -Path $WindowsUpdateCache -Recurse -Force | Remove-Item -Force -Recurse -ErrorAction SilentlyContinueWrite-Host "已清理:$WindowsUpdateCache" -ForegroundColor Yellow
} else {Write-Host "路径不存在:$WindowsUpdateCache" -ForegroundColor Gray
}# 清理回收站
Write-Host "清理回收站..." -ForegroundColor Cyan
$Shell = New-Object -ComObject Shell.Application
$RecycleBin = $Shell.NameSpace(10)
$RecycleBin.Items() | ForEach-Object { $_.InvokeVerb("delete") }
Write-Host "回收站已清空" -ForegroundColor Yellow# 清理浏览器缓存 (Edge/IE)
Write-Host "清理 Internet Explorer 和 Edge 缓存..." -ForegroundColor Cyan
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 255
Write-Host "已清理 IE 和 Edge 缓存" -ForegroundColor Yellow# 清理 Prefetch 文件
Write-Host "清理 Prefetch 文件..." -ForegroundColor Cyan
$PrefetchPath = "$env:SystemRoot\Prefetch"
if (Test-Path $PrefetchPath) {Get-ChildItem -Path $PrefetchPath -Recurse -Force | Remove-Item -Force -Recurse -ErrorAction SilentlyContinueWrite-Host "已清理:$PrefetchPath" -ForegroundColor Yellow
} else {Write-Host "路径不存在:$PrefetchPath" -ForegroundColor Gray
}# 清理系统日志文件 (可选)
Write-Host "清理系统日志文件..." -ForegroundColor Cyan
wevtutil el | Foreach-Object {wevtutil cl $_}
Write-Host "系统日志文件已清理" -ForegroundColor Yellow# 清理完成
Write-Host "所有清理任务已完成!" -ForegroundColor Green

使用说明

  1. 打开记事本,将上述脚本复制并粘贴进去。
  2. 保存文件为 CleanWindowsCache.ps1
  3. 以管理员身份运行 PowerShell。
  4. 在 PowerShell 中导航到脚本所在目录并执行:
.\CleanWindowsCache.ps1

注意事项

  1. 权限: 脚本需要以管理员权限运行。
  2. 数据丢失风险:
    • 确保重要文件不保存在临时文件夹中。
    • Windows 更新缓存清理后可能需要重新下载更新。
  3. 日志文件清理: 事件日志清理后将无法恢复,如无必要可注释相关部分。

方法二:使用批处理bat

功能与特点

  • 自动清理临时文件、更新缓存、浏览器缓存、回收站和系统日志。
  • 通过批处理脚本执行,直接在命令提示符中运行。
  • 简单高效,支持多种垃圾文件清理。
@echo off
title Windows 缓存清理工具
echo 开始清理 Windows 缓存和垃圾文件...
echo =======================================
:: 设置权限
echo 提升管理员权限运行脚本...
powershell -Command "Start-Process cmd -ArgumentList '/c %~s0' -Verb RunAs"
if not "%errorlevel%"=="0" exit /b:: 清理临时文件夹
echo 清理临时文件夹...
del /s /q %TEMP%\* >nul 2>nul
del /s /q %SystemRoot%\Temp\* >nul 2>nul
echo 临时文件夹已清理!:: 清理 Windows 更新缓存
echo 清理 Windows 更新缓存...
del /s /q %SystemRoot%\SoftwareDistribution\Download\* >nul 2>nul
echo Windows 更新缓存已清理!:: 清空回收站
echo 清空回收站...
powershell -Command "& {$Shell = New-Object -ComObject Shell.Application; $RecycleBin = $Shell.Namespace(10); $RecycleBin.Items() | ForEach-Object { $_.InvokeVerb('delete') }}"
echo 回收站已清空!:: 清理浏览器缓存 (IE/Edge)
echo 清理 Internet Explorer 和 Edge 浏览器缓存...
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 255
echo 浏览器缓存已清理!:: 清理 Prefetch 文件
echo 清理 Prefetch 文件...
del /s /q %SystemRoot%\Prefetch\* >nul 2>nul
echo Prefetch 文件已清理!:: 清理系统日志文件 (可选)
echo 清理系统日志文件...
for /f %%i in ('wevtutil el') do wevtutil cl "%%i"
echo 系统日志文件已清理!:: 完成
echo =======================================
echo 所有清理任务已完成!
pause
exit

使用方法

  1. 打开记事本,将上述代码粘贴进去。
  2. 保存文件,文件名如 CleanWindowsCache.bat
    • 保存时选择 文件类型 为 “所有文件”。
    • 文件名后缀为 .bat,例如:CleanWindowsCache.bat
  3. 右键点击生成的 .bat 文件,选择 以管理员身份运行

注意事项

  1. 管理员权限: 必须右键以管理员权限运行,否则可能无法删除某些文件。
  2. 重要文件: 请确认临时文件夹中没有重要文件。
  3. 日志文件: 系统日志清理不可恢复,必要时可以注释相关部分。

补充:知识power知识(具体详情可参考连接)

概述

.ps1文件是PowerShell写好的脚本文件。在Windows系统中,默认情况下是不允许执行.ps1文件的,那么怎么才能让系统允许执行.ps1文件呢?

什么是“.ps1”文件?

这个是PowerShell写的脚本文本,你可以在记事本中写一段PowerShell代码,然后将其保存为“xxx.ps1”,后面要使用它的时候,双击即可运行了。这有点像批处理的“.bat”文件,也有点像VBScript的“.vbs”文件。这些都是Windows的脚本文件。

如何执行“.ps1”文件?

接下来大家会问,那我们就双击它运行好了,还有什么好说的吗?当然要说。我们想得很美,双击一下就执行了,但是Windows系统默认是不允许执行.ps1文件的,所以你得往下看。

执行不成功的解决办法


1、将PowerShell的脚本内容保存到一个.ps1为后缀的文件中。
2、双击执行此ps1文件很有可能无法执行,提示:无法加载文件 D:\PowerShell\test\myfirst1.ps1,因为在此系统中禁止执行脚本。
3、运行get-executionpolicy,如果结果是Restricted,那表示禁止执行脚本。
4、执行如下命令,降低系统的安全性,允许执行脚本:set-executionpolicy -executionpolicy unrestricted

关于执行策略

这里有一个executionpolicy,翻译过来就是执行策略。Windows对PowerShell脚本默认的执行策略是:不允许执行,即Restricted。把它改成unrestricted自然就可以执行了。但微软给出的Best Practise(“最佳实践”)是RemoteSigned,这个级别比UnRestricted要高一点,不是什么程序都能执行。据我简单的了解,RemoteSigned是要求远程下载的ps1脚本文件必须是签名的才可以执行。至于我们在本机上自写的脚本程序,那是没有区别,都可以执行的。

修改执行策略需要权限

另外需要说明的是,如果是在Win7、Win8、Windows 2008、Windows 2012等系统上,且不是使用administrator账号来执行这个set-executionpolicy语句,将会报错,错误如下:
Set-ExecutionPolicy : 对注册表项“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell”的访问被拒绝。
这时候洪哥很疑惑,我使用账号虽然不是administrator,但也是administrators组的,为什么会没有权限呢?不管了,在注册表中,找到这个键,然后点右键选择“权限”,然后给当前登录系统的账号加一个“完全控制”的权限(只有“只读”和“完全控制”两个权限,所以就选“完全控制”了)。然后,再重新执行set-executionpolicy -executionpolicy unrestricted,就可以成功了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/64824.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

THM:Skynet[WriteUP]

目录 连接至THM服务器并启动靶机 信息收集 使用rustscan对靶机TCP端口进行开放扫描 使用nmap对靶机TCP开放端口进行脚本、服务扫描 使用nmap对靶机TCP开放端口进行漏洞、系统扫描 使用nmap对靶机常用UDP端口进行开放扫描 使用nmap对137端口进行针对性扫描 使用enum4lin…

【C语言】矩阵乘法

相信你是最棒哒!!! 文章目录 题目描述 正确代码 总结 题目描述 根据两个矩阵相乘的法则: 矩阵A乘矩阵B,得矩阵C,方法是A的第一行元素分别对应乘以B的第一列元素各元素,相加得C11,A的…

Jackson 的@JsonSerialize 注解

1. 概述 Jackson 提供了一套强大的注解,用于定制 Java 对象与 JSON 之间的序列化和反序列化过程。其中一个非常灵活的注解是JsonSerialize,它用于为对象指定自定义序列化器。在本教程中,我们将通过一个员工管理系统来深入了解这个注解的使用…

2025年前端面试热门题目——HTML|CSS|Javascript|TS知识

以下是对这些 HTML 面试问题的详细解答&#xff1a; 1. HTML 的 src 和 href 属性有什么区别? src (Source) 属性&#xff1a; 用于嵌入资源&#xff0c;例如图像、脚本或 iframe。加载资源时&#xff0c;当前页面的加载会暂停&#xff0c;直到资源加载完成。常用于 <img&g…

Redis篇--常见问题篇7--缓存一致性2(分布式事务框架Seata)

1、概述 在传统的单体应用中&#xff0c;事务管理相对简单&#xff0c;通常使用数据库的本地事务&#xff08;如MySQL的BEGIN和COMMIT&#xff09;来保证数据的一致性。然而&#xff0c;在微服务架构中&#xff0c;由于每个服务都有自己的数据库&#xff0c;跨服务的事务管理变…

简易分页制作

简易分页功能实现 分页是一种常见的前端功能&#xff0c;特别是在需要展示大量数据时。它通过将数据分割成多个页面&#xff0c;帮助用户更容易浏览并提高页面加载性能。本文将介绍一个简易分页的实现思路及其代码实现&#xff0c;旨在帮助开发者快速理解并实现分页功能。 功…

基于winform的五子棋机器人系统开发 (更新中ing)

一、实物硬件表拟定 笔记本电脑、正运动控制器、三个汇川伺服驱动器、三个滑动模组 二、软件开发 注意细节&#xff1a; ①主界面使用三个panel容器进行构建 pannel容器设置属性参数&#xff1a;(1) dock ② 添加自定义控件&#xff1a;首先创建类库&#xff0c;删除默认…

Springmvc,spring ,mybatis,整合,ssm

上一章内容&#xff1a; 1.spring框架:作用 开源的框架--提供IOC和AOPIOC控制反转 把创建对象的权力交于spring创建&#xff0c;并管理对象的生命周期&#xff0c;通过DI完成对象属性的注入。 ​ 2. spring配置中<bean>也可以使用注解Component Controller Service Repo…

微服务分布式(二、注册中心Consul)

首先我们需要安装consul,到官网下载Consul Install | Consul | HashiCorp Developer 在解压的consul目录下 执行启动命令 consul agent -dev 启动服务 -dev表示开发模式 -server表示服务模式 启动后在浏览器访问8500端口http://localhost:8500/可以看到服务管理界面 项目…

示波器--UNI-T 优利德 UT4102C 使用介绍

示波器--UNI-T 优利德 UT4102C 使用介绍 1 介绍图示特点 2 UTP04示波器探头&#xff08;100M带宽&#xff09;3 功能介绍4 示例RS232 电平信号测试 参考 1 介绍 图示 特点 2GS/s的实时采样率&#xff1a;设备能够以每秒2吉萨&#xff08;Giga Samples per second&#xff09;…

半连接转内连接规则的原理与代码解析 |OceanBase查询优化

背景 在查询语句中&#xff0c;若涉及半连接&#xff08;semi join&#xff09;操作&#xff0c;由于半连接不满足交换律的规则&#xff0c;连接操作必须遵循语句中定义的顺序执行&#xff0c;从而限制了优化器根据参与连接的表的实际数据量来灵活选择优化策略的能力。为此&am…

基础库正则表达式

我们已经可以用requests 库来获取网页的源代码&#xff0c;得到 HTML 代码。但我们真正想要的数据是包含在 HTML代码之中的&#xff0c;要怎样才能从 HTML,代码中获取想要的信息呢?正则表达式就是其中一个有效的方法。 本篇博客我们将了解一下正则表达式的相关用法。正则表达…

Azure虚拟机非托管磁盘大小调整

想要扩容一个Azure VM 的磁盘空间&#xff0c;门户里面竟然无法扩展&#xff0c;点点鼠标就完事的时代在离去&#xff0c;微软越来不想微软。 在门户里面即便使用Azure Cli命令行也不行。 PS /home/gpchina> az disk list [] 返回为空&#xff0c;根本没有返回磁盘。 不过使…

PID 控制算法理论背景:飞控领域的核心调控机制(1)

在飞控工程领域&#xff0c;PID 控制算法占据着极为关键的地位&#xff0c;是实现飞行器精确稳定控制的基石。PID 作为比例&#xff08;P&#xff09;、积分&#xff08;I&#xff09;、微分&#xff08;D&#xff09;的集成代表&#xff0c;构建起了控制系统的核心架构&#x…

复合翼与倾转旋翼飞行器:设计与控制算法对比

一、引言 复合翼&#xff08;Compound Wing&#xff09;和倾转旋翼&#xff08;Tilt - Rotor&#xff09;飞行器在现代航空领域均占据独特地位&#xff0c;二者在设计和控制算法方面展现出显著差异。这些差异在飞行模式切换、推进系统设计、控制算法复杂度以及飞行器稳定性等多…

Vue2五、自定义指令,全局局部注册、指令的值 ,插槽--默认插槽,具名插槽 ( 作用域插槽)

一、自定义指令 使用步骤 1. 注册 (全局注册 或 局部注册) &#xff0c;在 inserted 钩子函数中&#xff0c;配置指令dom逻辑 2. 标签上 v-指令名 使用 1、自定义指令&#xff08;全局&#xff09; Vue.directive("指令名"&#xff0c;{ 指令的配置项 insert…

一次BC站点渗透实录

初探 打开首页 简单信息收集: IP地址&#xff1a;美国加利福尼亚洛杉矶 无CDN 中间件:Nginx 80端口直接突破&#xff0c;故未进行端口扫描 渗透思路 一般这种BC站点&#xff0c;有几种思路可以切入&#xff1a; 1&#xff09;通过SQL注入查到管理员账号密码&#xff0c;扫描…

java 集合对象

Java 基础之集合_java集合继承关系图-CSDN博客 集合可以有序或无序&#xff0c;重复或不能重复&#xff0c;空或不能空。 List<> 集合&#xff0c;是有序&#xff0c;允许重复元素&#xff0c;允许空元素 1、ArrayList<> 非线程安全 2、LInkedList<> 非线…

深入探索 ClickHouse:性能优化之道

在大数据处理的广袤天地里&#xff0c;ClickHouse 宛如一颗璀璨的明星&#xff0c;以其卓越的性能为海量数据的存储与查询提供了强大助力。但要想让 ClickHouse 发挥出极致效能&#xff0c;性能优化至关重要。今天&#xff0c;就让我们一同深入探寻 ClickHouse 的性能优化之路。…

web实操8-cookie

会话技术 会话&#xff1a; 一次会话中包含多次请求和响应。 客户端浏览器访问服务器的资源&#xff0c;只要客户端或者服务器端不关闭&#xff0c;这始终在一次会话范围内&#xff0c;这一次会话范围内可以包含多次请求并且收到多次相应。 一次会话&#xff1a;浏览器第一…