参考文档:

1、http://www.360doc.com/content/14/0415/12/7873863_369147503.shtml

2、http://www.360doc.com/content/15/0609/10/16021371_476747230.shtml

一、尝试WINDOWS自带的命令先清理一部份:

dism /online /cleanup-image /spsuperseded

二、尝试使用自编脚本:(版本及来源为参考文档2,)

@echo off
rem 获取windows版本
set move_dir=%SystemRoot%\winsxs_del
if not exist %move_dir%\nul md %move_dir%
set winver=none
FOR /F "eol=; tokens=4* delims=] " %%i in ('ver') do set winver=%%i
if "%winver%" == "none" goto enover
echo windows version is %winver%, ready to list winsxs dir.
if not exist %SystemRoot%\winsxs\nul goto enosxs set ver_prefix=%winver:~0,-1%
echo list winsxs finished! now ready to clear duplicated files
echo dir /ad %SystemRoot%\winsxs\*_%ver_prefix%* if "%1" == "run-winsxs-generated" goto :lSkipGen
rem 准备生成代码
copy /y "%~f0" "%temp%\%~nx0" > nul
echo rem genereted code here >> "%temp%\%~nx0"
echo :ldcdStat1 >> "%temp%\%~nx0"
echo set end4=%%arg:%ver_prefix%=%%>> "%temp%\%~nx0"
echo goto ldcdStat2 >> "%temp%\%~nx0"
echo :ldcdStat3 >> "%temp%\%~nx0"
echo set end4a=%%arg:%winver%=%%>> "%temp%\%~nx0"
echo goto ldcdStat4 >> "%temp%\%~nx0"
rem notepad "%temp%\%~nx0"
"%temp%\%~nx0" run-winsxs-generated
goto :EOF :lSkipGen
FOR /F "eol=; tokens=1-4 delims= " %%a in ('dir /ad %SystemRoot%\winsxs\*_%ver_prefix%*') do (
if "%%c" == "<DIR>" call:fnDoClear %%d
) echo clear OK!
goto :EOF :enover
echo could not get windows version, abort!
goto :EOF :enosxs
echo not found %SystemRoot%\winsxs! maybe no privilege or lower windows!
echo only support windows XP and later!
goto :EOF :fnDoClear
rem arg: dir_name
FOR /F "eol=; tokens=1-14 delims=_" %%g in ("%1") do call:fnDoClearDir %1 %%g %%h %%i %%j %%k %%l %%m %%n %%o %%p %%q %%r %%s %%t %%u %%v %%w %%x %%y %%z
goto :EOF :fnDoClearDir
rem arg: dir_name dir_parts
set d_name=%1
rem 检查参数是否匹配 %winver%, 先跳过前两个.同时准备组合新版本匹配名称,nv1存当前版本,nv2存当前的前一个版本
set nv1=%2_%3_
set nv2=%2_%3_
:ldcdCycle
if "%4" == "" goto :EOF
rem 检查是否 ver_prefix 开头,如果是则继续检查是否winver,如果不是winver则表示目标存在
set arg=%4
rem set line=set end4=%%arg:%ver_prefix%=%%
rem %line%
goto ldcdStat1
:ldcdStat2
if "%arg%" == "%end4%" goto ldcdNext
rem 检查是否 winver 开头
rem set line=set end4a=%%arg:%winver%=%%
rem %line%
goto ldcdStat3
:ldcdStat4
if not "%arg%" == "%end4a%" goto :EOF
rem 至此则为 ver_prefix 开头 且 不等于 winver 的目录名,检查最新版本是否存在,存在则可删除旧的
set newfound=false
for /d %%v in ("%SystemRoot%\winsxs\%nv1%%winver%.*_%5_*") do (
if exist %%v\nul set newfound=true
)
if "%newfound%" == "true" call:fnDelDir %d_name% goto :EOF
:ldcdNext
set nv2=%nv1%
set nv1=%nv2%%4_
shift
goto ldcdCycle :fnDelDir
rem arg: dir
echo del %SystemRoot%\winsxs\%1
takeown /r /f "%SystemRoot%\winsxs\%1"
cacls "%SystemRoot%\winsxs\%1" /t /e /g everyone:f
move "%SystemRoot%\winsxs\%1" "%move_dir%\%1"
goto :EOF

三、目前看通过上面两步后,winsxs目录缩减了一大部份,系统稳定

 

关于winsxs目录的处理的更多相关文章

  1. 黄聪:怎么清理win7、win8更新垃圾(winsxs目录清理)

    windows 系统(特别是Win8系统)在使用了一段时间后,发现C盘的空间降的好厉害,显然,有大量不该存在的文件还继续停留在硬盘里.究其原因,在于系统目录下的WinSxS目录占用了大量的空间!在我们 ...

  2. 为Windows 7的winsxs目录瘦身,谨慎。

    刚使用Win7 系统不久,前段时间在清理系统垃圾时发现,win7系统的windows文件夹下的winsxs 文件夹占用空间很大,想清理之,却提示无权限无法清理.随即在网上查了个到底,原来winsxs是 ...

  3. WinSxS目录下文件的清除

    1)McAfee Scanner service 持续高cpu 2)上网查到了,需要看 %deflogdir%目录下的OnDemandScan_Activity.log 3) 打开这个文件,发觉一直在 ...

  4. Windows更新清理工具 (winsxs 清理工具)

    Windows 更新清理工具是一款效果非常显著的Windows7.Windows8操作系统清理优化工具!经常安装系统的朋友相比有所体会,刚刚安装完成的Win7.Win8其实占的空间并不大,去掉页面文件 ...

  5. VS Build目录下各文件的作用

    VS2010中各种类型文件的作用: .sln 相当于VC6中 .dsw    .vcxproj 相当于VC6中 .dsp    .suo 相当于VC6中 .ncb    .vcxproj.filter ...

  6. WINDOWS 的 MKLINK : 硬链接,符号链接 : 文件符号链接, 目录符号链接 : 目录联接

    玩转WIN7的MKLINK 引言: 换了新电脑,终于再次使用上啦WIN7 ,经过一个周每天重装N次系统,... ... ... ... 在xp系统下,junction命令要用微软开发的小程序 junc ...

  7. MFC应用程序配置不正确解决方案(manifest对依赖的强文件名,WinSxs是windows XP以上版本提供的非托管并行缓存)

    [现象] 对这个问题的研究是起源于这么一个现象:当你用VC++2005(或者其它.NET)写程序后,在自己的计算机上能毫无问题地运行,但是当把此exe文件拷贝到别人电脑上时,便不能运行了,大致的错误提 ...

  8. python4delphi 使用

    Python 开发桌面程序, 之前写过一个使用IronPython的博客. 下面这个方案使用 delphi 作为主开发语言,通过 python4delphi 控件包将 python 作为 script ...

  9. 如何在其他电脑上运行VS2005编译的DEBUG版应用程序

    做项目的过程中,遇到这样的问题:在自己的电脑上用VS2005编译好的DEBUG版程序在其它的没有安装VS2005的电脑上没有办法运行,郁闷至极啊. 直 接拷贝文件后,错误信息如下:"This ...

随机推荐

  1. 【446】Deep Learning

    ref: 深度学习基础介绍 机器学习19 神经网络NN算法 ref: 深度学习基础介绍 机器学习11 神经网络算法应用上 ref: 深度学习基础介绍 机器学习12 神经网络算法应用下 ref: 神经网 ...

  2. Springboot 禁用数据库自动配置

    转载至:https://blog.csdn.net/wyw815514636/article/details/80846545 https://blog.csdn.net/knqi007/articl ...

  3. Ubuntu16.04 安装搜狗Linux中文输入法

    参考链接: https://blog.csdn.net/leijieZhang/article/details/53707181 补充:安装完搜狗拼音输入法后候选栏是乱码的情况,解决方法如下: 输入如 ...

  4. 【视频开发】ffmpeg 的编译选项

    ffmpeg xxxx$ ./configure --help Usage: configure [options] Options: [defaults in brackets after desc ...

  5. centos php7.1 redis4.0.9 安装扩展phpredis

    1.扩展列表 https://github.com/phpredis/phpredis/releases [root@VM_27_0_centos server]# ls data lib.pl my ...

  6. Spell It Right

    Given a non-negative integer N, your task is to compute the sum of all the digits of N, and output e ...

  7. LeetCode 227. 基本计算器 II(Basic Calculator II)

    227. 基本计算器 II 227. Basic Calculator II 题目描述 实现一个基本的计算器来计算一个简单的字符串表达式的值. 字符串表达式仅包含非负整数,+,-,*,/ 四种运算符和 ...

  8. TCP/IP协议的工作流程

    1.在源主机上,应用层将一串应用数据流向下传输给传输层 2.传输层将应用数据截流成分组,并加上TCP报头形成TCP段,向下递交给网络层 3.在网络层给TCP段加上包括源主机,目的主机IP地址的IP报头 ...

  9. [转帖]Xshell改字体,改大小,改快捷键方法

    Xshell改字体,改大小,改快捷键方法 -- :: Jason Ho 阅读数 62更多 分类专栏: Software 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附 ...

  10. Kafka Schema Registry | 学习Avro Schema

    1.目标 在这个Kafka Schema Registry教程中,我们将了解Schema Registry是什么以及为什么我们应该将它与Apache Kafka一起使用.此外,我们将看到Avro架构演 ...