中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-12 23:19
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » 中毒后恢复隐藏文件夹的一个问题
可打印版本  1,274 / 10
第1楼 vzdong 发表于 2010-01-17 10:22
新手上路 发帖 11 积分 15
中毒后恢复隐藏文件夹的一个问题
现在拿u盘去打印店里打印一般都会中一个把所有根目录下的文件和文件夹都隐藏的病毒,
一般在u盘根目录下建一个批处理文件,内容如下:
attrib -h -s -a -r /D /S

就可以把问题解决,但是当目录树庞大的时候(我的是8G的u盘,装了不少文件),将要耗费很多时间才能处理完

因为 这个选项 /S:处理当前文件夹及其子文件夹中的匹配文件

我想问大家有没有办法只处理根目录下的文件夹和文件而不处理子文件夹下的呢
第2楼 radem 发表于 2010-01-17 12:48
高级用户 发帖 383 积分 691
去掉/S
第3楼 vzdong 发表于 2010-01-17 13:15
新手上路 发帖 11 积分 15
不行的,去掉/s之后就不能改变文件夹的属性了,只能改变文件的属性
第4楼 HAT 发表于 2010-01-17 15:15
版主 发帖 5,017 积分 9,023
用for /d遍历文件夹如何?
第5楼 UncleBill 发表于 2010-01-17 16:12
新手上路 发帖 10 积分 12 来自 海南
我也想知道!
第6楼 vzdong 发表于 2010-01-17 16:30
新手上路 发帖 11 积分 15
这样也不能解决问题,
attrib -h -s -a -r %%c /D /S时也会对改文件夹下的文件及文件夹进行操作
第7楼 vzdong 发表于 2010-01-17 16:51
新手上路 发帖 11 积分 15
不好意思啊,我忘记了命令的用法,二楼的说的是正确的,去掉/s 和/d 就可以了
我的代码是这样的,因为不太会用for,希望有人帮我把它改成一行代码,同时不用生成a.txt文件
dir/b/a>a.txt
for /f %%c in (a.txt) do attrib -h -s -a -r %%c

我发现段代码不可以处理中间有空格的文件或文件夹哦,希望高人指教啊

[ Last edited by vzdong on 2010-1-17 at 16:56 ]
第8楼 vzdong 发表于 2010-01-17 18:09
新手上路 发帖 11 积分 15
for /d %%c in (*) do attrib -h -s -a -r %%c

没有效果啊 for /d 不可以对隐藏文件夹进行检索啊
第9楼 vzdong 发表于 2010-01-17 18:09
新手上路 发帖 11 积分 15
Originally posted by HAT at 2010-1-17 15:15:
用for /d遍历文件夹如何?

for /d %%c in (*) do attrib -h -s -a -r %%c

没有效果啊 for /d 不可以对隐藏文件夹进行检索啊
第10楼 HAT 发表于 2010-01-17 18:10
版主 发帖 5,017 积分 9,023
Re 7楼
给for循环加上delims=即可处理空格
第11楼 vzdong 发表于 2010-01-17 19:46
新手上路 发帖 11 积分 15
Originally posted by HAT at 2010-1-17 18:10:
给for循环加上delims=即可处理空格

多谢啦,一边学一边改,现在成这样子了
for /f "delims=" %%c in ('dir /b /a') do attrib -h -s -a -r "%%c"
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023