成长值: 36955
|
话说这些天传说中的坑小白神贴“30秒清除你电脑中的垃圾”又被小白们疯转了...现在就让我们来研究一下这是个什么玩意。
点开原帖一看,顿时就被吓尿了,分类上赫然写着“常识”,真是可怕。
其它文字都是废话,先看代码:
这是一个看起来像小学生写的批处理文件(不过我小学时候玩DOS也没写过这么幼稚的代码...),蓝色为注释。
必须承认,它的确能清除许多垃圾,但显然是次要的,它的副作用显然应该放在首位。它没有设定筛选规则,因此对符合要求的文件一律删除,即可造成误删。
临时文件(*.tmp、*._mp),是程序运行产生的临时文件,除刚开机的状态外,删除均有可能造成当前运行中的文件出错。
日志文件(*.log)用于记录程序的运行信息,如访问记录、操作记录、错误记录等等,本身极小,对现在的硬盘容量而言微不足道,删除对运行速度几乎无影响,却有造成重要信息丢失的风险。
服务器暂存文件(cookies)记录着帐号、密码等服务器暂存信息,我相信大多人还是不愿意把系统记住的常用网站密码全部重新输一遍的。
最近使用文件夹(recent)记录着最近打开的文件,至少就个人而言,还是不喜欢把最近打开文档清空的。另外,这里的最大槽点在于为了清空recent文件夹,作者写了一行奇葩的无效代码,不加双引号的%userprofile%是无法被正确识别的,智商捉急(小学生?)。
del /f /s /q "%userprofile%\Local Settings\Temp\*.*"用del命令删除Temp目录下的文件,却留下一堆空文件夹,作者智商捉急(小学生?)。
rd /s /q %windir%\temp & md %windir%\temp这行将临时文件夹直接删除,对FAT32格式的系统无副作用没错,然而现在的计算机大多使用NTFS格式,删除系统文件夹后新建的文件夹权限发生改变,将导致部分软件运行异常,且此异常很难发现,就像埋下一颗定时鸡蛋。另:del /f /s /q %systemdrive%\recycled\*.*这行作者试图直接清空回收站,可能造成用户不愿彻底删除的文件丢失的严重后果就不吐槽了,这个目录只存在于FAT32格式的文件格式,写代码考虑不周全的作者很明显智商捉急(小学生?)。
临时帮助文件(*.gid)、磁盘检查文件(*.chk)、临时备份文件(如:*.old、*.bak)可删除,这些就不黑了。
最后来看del /f /s /q %windir%\prefetch\*.*这行。删除预读文件夹真的能使系统运行加快吗?Prefetcher(预读取)是始于Windows XP的一项内存管理技术,它能够跟踪用户习惯,预先从硬盘上中载入一部分常用程序运行所需的数据片段到物理内存中,从而提升系统和程序运行速度。该技术后来在Vista时代升级为SuperFetch(超级预读取),进一步提升了效率,并且能够在不同时间点抓取不同程序的数据片段(比如,你可能习惯在早晨开机后第一时间打开浏览器,而在傍晚使用相关软件与移动硬盘同步数据,那么Windows在早间启动时就不会读入同步软件的有关数据片段)。Prefetch这个文件夹服务于Prefetcher或SuperFetch功能,当系统启动或程序运行时,Windows会自动查找这一文件夹,并根据相关记录预提取数据片段到物理内存中,从而减少了性能相对较低的硬盘读写操作。与此同时,Windows也会定期地根据目录中Layout.ini文件记录的内容,将相关文件的位置调整到连续的磁盘区块中。删除或者清空Prefetch这个文件夹,会造成Windows丢失这些跟踪数据,从而拖慢整个系统的效能;另一方面,系统也将重新花费较长的时间来再次建立这些记录。错误的操作,将导致程序启动时间成倍增加。很想对作者说一句,小学生智商不行不怪你,但出来害人就不对了吧?
现在,你还敢相信所谓的“30秒使你的系统急速如飞”吗?
该贴已经同步到 小柳的微博 |
|