中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-15 13:51
47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,268 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助]for命令修改所有隐藏文件属性
可打印版本  6,564 / 32
第1楼 honyfox 发表于 2007-01-19 09:09
初级用户 发帖 11 积分 26
[求助]for命令修改所有隐藏文件属性
原本打算用for命令来删除磁盘上所有的*.info文件,用的批处理命令是
for /r %%a in (c: d: e: f:) do tree /f > 1.txt
for %%a in (1.txt) do del *.info
但是*.info文件却被自动加了隐藏属性,不知道这个该怎么处理,请教大家了,多谢!

我开始用的是for /r %%a in (c: d: e: f:) do attrib -h *.info,但是运行发现只是在对当前目录的info文件作修改,如果改成for /r %%a in (c: d: e: f:) do attrib -h *.info %%a,就会提示参数错误。刚学批处理,对命令理解不够,请大家不吝赐教,再次致谢!

[ Last edited by honyfox on 2007-1-18 at 08:16 PM ]
第2楼 oilio 发表于 2007-01-19 09:12
高级用户 发帖 303 积分 641
楼主指的所有隐藏文件,说得好像很含糊啊,到底是硬盘上所有的隐藏文件你都想去掉它的属性,还是指把一个分区里的所有隐藏文件的属性去掉?还是别的??
第3楼 honyfox 发表于 2007-01-19 09:16
初级用户 发帖 11 积分 26
不好意思,刚才编辑的时候不小心按到Ctrl+Enter给发了,还没写完,Sorry
第4楼 lxmxn 发表于 2007-01-19 09:34
版主 发帖 4,938 积分 11,386
  如果是Windows XP的系统,在命令行试试下面这个命令?
第5楼 honyfox 发表于 2007-01-19 09:50
初级用户 发帖 11 积分 26
成功了,lxmxn真厉害!
第一次接触到wmic这个命令,刚去查了查,今天又有不小收获了,谢谢lxmxn了!
另外skip这里的用法我不懂,请教一下,谢谢!
第6楼 lxmxn 发表于 2007-01-19 09:57
版主 发帖 4,938 积分 11,386

  因为在for命令里面 ,skip=n代表忽略前n行,而这里wmic命令的输出的第一行是"Caption",如下图所示,所以这里用"skip=1"跳过第一行提取驱动器盘符。

Caption
C:
D:
E:
F:
第7楼 honyfox 发表于 2007-01-19 10:08
初级用户 发帖 11 积分 26
哦,懂了,谢谢lxmxn了 ^_^
第8楼 oilio 发表于 2007-01-20 01:30
高级用户 发帖 303 积分 641
强啊,这个命令我也很少看见,还有一次也是看见lxmxn发的,是得知计算机上一共有几个分区的。
第9楼 htysm 发表于 2007-01-20 03:17
高级用户 发帖 415 积分 866
DOS论坛真乃“牛人如云”啊。这么一行命令就能遍历电脑中的所有驱动器中的所有文件。
第10楼 oilio 发表于 2007-01-20 09:39
高级用户 发帖 303 积分 641
lxmxn能不能给我霁一下'wmic logicaldisk where "drivetype='3'" get caption'这段命令的含义。只知道logicaldisk好像是说逻辑磁盘,后面的就不知道了。这个命令是属于什么命令啊,很早前学过一点点dos的基础,好像没有碰过这个命令啊。。看了一下帮助里的,有些不大懂。
第11楼 lxmxn 发表于 2007-01-20 11:15
版主 发帖 4,938 积分 11,386
  Re oilio:

  这里的'wmic logicaldisk where "drivetype='3'" get caption'命令是获取磁盘驱动器盘符的,其中where相当于一个筛选,drivetype=3指定要筛选的驱动器类型代号为3的驱动器。当然,还有其它的类型,比如2代表软盘驱动器,3代表磁盘驱动器,5代表光盘驱动器(CD-ROM)。这里指定了是3,那么命令给出的,就是所有硬盘驱动器的盘符了;

  这里的get是一个动词,在WMIC里面,代表了获取一个别名的属性,caption就是logicaldisk别名的一个属性,其属性值正是驱动器的盘符;

  Logicaldisk还有其它的很多属性,比如DeviceID,DriveType,FreeSpace,ProviderName,Size,VolumeName等属性,可以用get动词来获取,具体的命令帮助就可以输入命令wmic logicaldisk get /?得到。

  建议你搜索一下前任版主3724668版主关于WMIC命令的使用,我也是刚学,不是很懂,有错误的地方,兄见谅了。


[ Last edited by lxmxn on 2007-1-19 at 10:24 PM ]
第12楼 tracert 发表于 2007-01-21 00:05
新手上路 发帖 4 积分 8
lxmxn你太厉害了
那个命令太有用了
第13楼 oilio 发表于 2007-01-21 03:50
高级用户 发帖 303 积分 641
嗯,好的,谢谢lxmln兄,我去学习学习。感觉这个命令挺有用的。受教了。
第14楼 lovesaly 发表于 2007-01-21 05:46
新手上路 发帖 6 积分 12
厉害啊
我还没有见过这个命令呢
又学到了一点东西咯
第15楼 bob1989 发表于 2007-01-22 10:02
中级用户 发帖 144 积分 322
C:\>wmic
'wmic' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
1 2 3  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023