Board logo

标题: [文件操作] 批处理如何把现有盘符里所有文件的隐藏属性去除? [打印本页]

作者: xlybzk    时间: 2011-6-10 09:14     标题: 批处理如何把现有盘符里所有文件的隐藏属性去除?

公司电脑中隐藏文件夹的病毒了,杀毒后文件夹属性不能自动修复隐藏属性.所以我想写个批处理查找已存在的盘符并清除里面所有文件及文件夹的隐藏只读等被病毒修改的属性.
  1. set str=c d e f g h i j k l m n o p q r s t u v w x y z
  2. for %%i in (%str%) do if exist %%i: attrib -r -a -s -h %%i:\*.* /s /d
  3. pause
复制代码
这是我瞎写的勿笑,希望高人能在给出正确答案时顺手指点一下我的代码为什么不成功.执行过程一闪而过,我加了pause应该暂停才对....
作者: mxxcgzxxx    时间: 2011-6-10 09:33

参考FOR /R 功能
而且你这种做法很危险,会把所有的文件包括系统文件都解只读隐藏,
如果你对系统不熟会很乱的!建议保留系统目录
作者: Hello123World    时间: 2011-6-10 17:34

代码没错,怎么会不停顿呢?
作者: mxxcgzxxx    时间: 2011-6-10 17:53

测试代码正确,不过如果在C盘时间要很久因为文件多!
其他盘的[System Volume Information]目录会提示拒绝访问!
时间真的很长很长,楼主可能是没耐心等到C盘结束吧
作者: xlybzk    时间: 2011-6-11 14:56

4# mxxcgzxxx
你看我发的代码,我考虑到会很长所以我有加pause,可是我执行的结果是CMD窗口一闪而过,根本就不知道有没有返回错误提示
作者: Batcher    时间: 2011-6-11 15:01

5# xlybzk


代码保存为C:\xxx.bat
开始
运行
cmd
C:\xxx.bat
看看哪一步出错了
作者: xlybzk    时间: 2011-6-11 16:56

本帖最后由 xlybzk 于 2011-6-11 16:57 编辑

呃...真是难以启齿,按照六楼的做了,提示attrib已损坏,让运行chkdsk修复....
等我换个机器再测试一下




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2