中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-02 21:37
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 怎么用批处理修改文件或者文件夹属性??? 查看 3,553 回复 19
楼 主 怎么用批处理修改文件或者文件夹属性??? 发表于 2003-03-10 00:00 ·  中国 广东 东莞 电信
中级用户
★★
积分 234
发帖 50
注册 2002-11-20 00:00
23年会员
UID 294
性别 男
状态 离线
在WIN2000下,
假如我想改C:\盘下的DIR目录的属性为”禁止EVERYONE读取“,
该如何写个BAT文件呢?
谢谢!!!
2 发表于 2003-03-10 00:00 ·  中国 广东 广州 增城区 电信
元老会员
★★★
积分 1,468
发帖 407
注册 2002-10-21 00:00
23年会员
UID 34
性别 男
来自 广州
状态 离线
你试一试这个命令:
ATTRIB -R -S -H C:\DIR

欢迎大家观临我的个人主页:

http://dosdiy.bluepc.com.cn/
http://dosdiy.ys168.com/


EMAIL: lydong@china.com.cn lydong@yeah.net
----------------------------------------------
3 发表于 2003-03-10 00:00 ·  美国 肯塔基州 费耶特县 列克星敦 Charter_Communications
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
不对吧,这涉及文件权限问题,而不是文件属性问题。应该用CACLS命令,而不是ATTRIB命令。
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

4 谢谢各位! 发表于 2003-03-11 00:00 ·  中国 广东 东莞 电信
中级用户
★★
积分 234
发帖 50
注册 2002-11-20 00:00
23年会员
UID 294
性别 男
状态 离线
我想限制WIN2000中的游戏使用,用了如下语句:
cacls c:\winnt\system32\freecell.exe /d everyone
cacls c:\winnt\system32\winmine.exe /d everyone
cacls c:\winnt\system32\sol.exe /d everyone
cacls c:\Program Files\Windows NT\games\cblocks.exe /d everyone
cacls C:\Program Files\Windows NT\Pinball\pinball.exe /d everyone
结果前面三句有效,而后面两句是无效的.
想必是系统盘下的Program files文件夹被系统默认为"只读"的缘故,
于是我用了attrib -r c:\program files\33.txt /d,
但是还是没用,
请问该如何在执行CACLS命令前去掉Program files 的只读属性???
谢谢!!!
5 发表于 2003-03-11 00:00 ·  中国 香港 香港教育大学
管理员
★★★★
專業島民
积分 4,869
发帖 1,633
注册 2002-12-10 00:00
23年会员
UID 465
性别 男
状态 离线
attrib -r c:\Program Files
我的網站:http://mw16.2ya.com/ 我的網誌: http://scrappedblog.blogspot.com/
~
我的Winamp正在播放的歌曲:
6 发表于 2003-03-11 00:00 ·  美国 肯塔基州 费耶特县 列克星敦 Charter_Communications
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
不是这个原因,而是因为C:\Program Files是带有空格的长文件名,应该用引号括起来,否则无效,例如:ATTRIB -R "C:\Program Files"
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

7 发表于 2003-03-11 00:00 ·  中国 广东 东莞 电信
中级用户
★★
积分 234
发帖 50
注册 2002-11-20 00:00
23年会员
UID 294
性别 男
状态 离线
不行啊,
提示:
C:\>attrib -r c:\Program Files
Parameter format not correct -
8 发表于 2003-03-11 00:00 ·  美国 肯塔基州 费耶特县 列克星敦 Charter_Communications
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
用引号:ATTRIB -R "C:\Program Files"
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

9 发表于 2003-03-11 00:00 ·  中国 广东 东莞 电信
中级用户
★★
积分 234
发帖 50
注册 2002-11-20 00:00
23年会员
UID 294
性别 男
状态 离线
wengier,
OK啦,谢谢你了,
我又增长见识啦.
还有谢谢各位朋友的帮助!
10 发表于 2003-03-11 00:00 ·  中国 广东 东莞 电信
中级用户
★★
积分 234
发帖 50
注册 2002-11-20 00:00
23年会员
UID 294
性别 男
状态 离线
OK.WIN200下实现游戏禁用的步骤为:
cacls c:\winnt\system32\freecell.exe /d everyone
cacls c:\winnt\system32\winmine.exe /d everyone
cacls c:\winnt\system32\sol.exe /d everyone
ATTRIB -R "C:\Program Files"
cacls "c:\Program Files\Windows NT\games\cblocks.exe" /d everyone
cacls "C:\Program Files\Windows NT\Pinball\pinball.exe" /d everyone
当然这要在管理员帐号下运行此批处理,
而这也只能限制普通用户.
不知道这种方法保险吗?
欢迎提意见.
11 发表于 2006-04-29 04:07 ·  中国 河南 郑州 电信
中级用户
积分 207
发帖 41
注册 2004-10-24 00:00
21年会员
UID 32885
性别 男
状态 离线
ATTRIB -R "C:\Program Files"
^_^
长见识了

[ Last edited by flysp on 2006-4-29 at 04:17 ]
12 发表于 2006-04-29 12:03 ·  中国 四川 绵阳 电信
高级用户
★★
积分 587
发帖 282
注册 2006-04-10 03:40
20年会员
UID 53599
性别 男
状态 离线
有些多余,windows下用鼠标点两下就成了,没必要如此麻烦.(当然前提是必需是NT分区并具管理权限)
如果是DOS下,根本就限制不了
13 发表于 2006-04-29 12:58 ·  中国 湖北 荆门 电信
荣誉版主
★★★
积分 2,013
发帖 718
注册 2006-02-18 07:07
20年会员
UID 50550
状态 离线
只要有用途的脚本就不能算是多余的脚本,毕竟我曾经尝试过刚装完系统手动一个一个设置权限,工作量大了以后脚本就能显示出它的作用了。
诚然,xuantian 是考虑到此脚本的局限性,所以会认为此脚本有些多余。不过,本版现在是 DOS批處理 & 腳本技術(批處理室),因此不必太过关注与DOS的联系,相反地,我更希望本版能够海纳百川,只要是与脚本有关的都可以拿出来大家一起学习研究。
Re 想学DOS
“结果前面三句有效,而后面两句是无效的.
想必是系统盘下的Program files文件夹被系统默认为"只读"的缘故..."
应该不是program files文件夹只读属性的缘故,应该是从一开始你的命令中的路径包含空格的缘故,毕竟文件访问控制表(ACL)与文件属性是两码事。
14 发表于 2006-04-29 14:42 ·  中国 四川 绵阳 电信
高级用户
★★
积分 587
发帖 282
注册 2006-04-10 03:40
20年会员
UID 53599
性别 男
状态 离线
如果从技术上说...(NT系统安装后的设置并不太多也不太复杂)
另外,在编写NT的脚本/批处理的地方,应该有个良好的习惯,就是使用引号"",这样可以会减少些不必要的麻烦(这大概也是支持长文件名或者名称中可含空格及一些特殊符号的好处之一吧)
15 发表于 2006-05-04 14:24 ·  中国 湖北 荆门 电信
荣誉版主
★★★
积分 2,013
发帖 718
注册 2006-02-18 07:07
20年会员
UID 50550
状态 离线
Originally posted by xuantian at 2006-4-29 14:42:
如果从技术上说...(NT系统安装后的设置并不太多也不太复杂)
..

抬个杠:
如果没有高点的要求当然是比较简单了,从技术上说可以不用设置。
但是如果想充分发挥系统的功能以及尽可能地保证系统的安全的话,仔细地设置一遍是很必须的。
本人电脑XP PRO SP2系统,买回家就装过两次系统,第一次是买的时候,花了大半个钟头设置完毕,未装任何除了windows以外的任何安全工具(防火墙,杀毒软件等等。。),平时也喜欢下些乱七把糟的软件来玩玩,记得到第二次装系统前仅仅中过一个间谍软件,最后手杀了。后来因为磁盘空间的关系,而且系统用了快2年了,比开始慢一些了,于是重新装的第二次系统,一直用到现在。
其实,系统设置也算是一门学问吧。
论坛跳转: