cacls 使用方法

cacls 使用方法C gt cacls 显示或者修改文件的访问控制表 ACL CACLSfilenam T E C Guser perm Ruser Puser perm Duser filename 显示 ACL fileame 为文件路径 具体文件名 例 caclsc

C:\>cacls /?

显示或者修改文件的访问控制表(ACL)

CACLS filename [/T] [/E] [/C] [/G user:perm] [/R user […]]
               [/P user:perm […]] [/D user […]]

   filename      显示 ACL。

(fileame为文件路径+具体文件名;例:cacls c:\test.txt,他就会显示该文件的所有用户权限了。不懂 就看图1)
Highslide JS
另外大家可能看到BUILTIN\Administrator,可能有人会奇怪,这个BUILTIN是什么意思,他的意思就是“表示内建帐户。也即表示Windows的Administrator用户组。”
(图1)

   /T            更改当前目录及其所有子目录中指定文件的 ACL。
(/T就是修改当前以及在其目录下的所有子目录的相应文件权限,比如我建立了
c:\1\1.txt
c:\1\2\1.txt
c:\1\2\2.txt
三个文件,如果我用cacls c:\1\1.txt /t /g:everyone:r,那么他的效果就如图2图3图4,本来我是处理的c:\1\1.txt,但是因为加了/t这个参数,在c:\1\目录下所有子目录下的1.txt权限就都被更改了。
)
Highslide JS
图2 c:\1\1.txt

Highslide JS
图3 c:\1\2\1.txt

Highslide JS
图4 c:\1\2\2.txt

   /E            编辑 ACL 而不替换。
(这个/E对于我来说有点咬文嚼字了,编辑,而不替换,什么意思呢就是说,比如c:\test.txt的权限,如图5)

Highslide JS
图5

大家都看到他的权限了吧,那么/e参数起什么作用呢?我们来修改下Administrator的权限。
命令是 cacls c:\test.txt /e /p Administrator:r ,处理过的文件看图6
Highslide JS

图6,和图5比较一下,因为有/e参数,他只是修改了Administrator的权限。

   /C            在出现拒绝访问错误时继续。
(这个就好解释了,就是不管命令是否有错,都继续执行。就不加图做演示了。)

   /G user:perm  赋予指定用户访问权限。
                 Perm 可以是: R  读取
                              W  写入
                              C  更改(写入)
                              F  完全控制
(/G呢就是给指定用户访问权限,而且会删除该文件上其他用户的所有权限,比如我那个更改HOSTS文件
权限的命令吧,就是/g everyone:r 用了这个命令,就会把 hosts文件上的所有用户只替换成你指定的用户
权限,并把其他用户全部删除。那么看下演示,还是c:\test.txt,先看下它没经过/g处理的时候,如图7)

Highslide JS
图7 c:\test.txt没经过/G参数处理时候的图。

再看图8,是用/G参数处理过的,处理命令为 echo y|cacls c:\test.txt /g Administrator:r

Highslide JS
图8,用 echo y|cacls c:\test.txt /g Administrator:r命令处理过的效果。

用图8和图7一对比,知道/g参数的作用了否???

   /R user       撤销指定用户的访问权限(仅在与 /E 一起使用时合法)。
(/R我的理解就是删除文件上指定用户的权限,你写哪个用户,哪个用户的权限就会删除,同时必须有/E参数)
看图说明吧,还是图比较直观,先看c:\test1.txt文件原来有的权限。如图9
Highslide JS
图9

那么我们用命令 cacls c:\test1.txt /e /r system命令处理一下,把system用户权限给删除。看图10
Highslide JS
图10,用命令 cacls c:\test1.txt /e /r system把SYSTEM用户权限给删掉了。和图9比一下 。也就理解了。那如果我是用命令 cacls c:\test1.txt /e /r Administrator呢?界于/R参数的关系 ,那就Administrator的用户权限也没有了呗!

   /P user:perm  替换指定用户的访问权限。
                 Perm 可以是: N  无
                              R  读取
                              W  写入
                              C  更改(写入)
                              F  完全控制
(/P就是把原来的所用用户权限都改为你命令中输入的权限,比如你看图11,一共有3个用户权限)
Highslide JS
图11
主要是看现在Administrator的权限,是所有权限,那么我们用命令
echo y|cacls c:\test1.txt /p Administrator:r,把test1.txt文件改为只有
Administrator有读取权限。看图12
Highslide JS
明白了吧,替换就是把所有的权限都替换成你命令里的权限,如果加了/E参数的话 ,那其他2个用户的权限就不会没有,而Administrator一样会被改为只有读取权限。我就不再做说明了。大家可以测试下。
命令是cacls 文件 /e /p 用户名:r,用这个命令处理过一个文件后,你会发现他原来的用户权限都在。
但是你命令中的用户名权限 就会被改为只有读取权限了。

   /D user       拒绝指定用户的访问。在命令中可以使用通配符指定多个文件。也可以在命令中指定多个用户。

(/D嘛,看CMD的说明就知道了。就是拒绝指定用户的访问了。。再来个图片说明,看图13 c:\test2.txt文件的原有权限。)
Highslide JS
图13。他的Administrator目前是所有权限。
那我们用命令 echo y|cacls c:\test2.txt /e /d Administrator处理下。
看图14,然后再和图13比一下 。我们会发现Administrator的权限都变成拒绝了,且文件不可访问。

Highslide JS

图14

大概就是这些意思吧,可能其中的某些参数没有演示到位,或者有些词不搭意,但是我想不懂的人看过之后至少能明白一些,其中的命令配合大家自行研究一下,其实我对批处理也只是一知半解,但是我这个人遇到问题后就喜欢把问题写出来,做个简单的教程来同大家分享,因为我介绍的这些东西并不是什么高深内容,但是讲起来又很麻烦,所以就算是普及一下九年义务教育好了。 高手别骂我,如果有什么错误请指正,同时没有诋毁任何人的意思。

缩写:
   CI – 容器继承。
        ACE 会由目录继承。
   OI – 对象继承。
        ACE 会由文件继承。
   IO – 只继承。
        ACE 不适用于当前文件/目录。






















































































































转载于:https://www.cnblogs.com/jcss2008/archive/2009/08/04/1538481.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/217291.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 上午9:54
下一篇 2026年3月18日 上午9:55


相关推荐

  • 免费国内php空间_全球vps交流网站超级vps管理器

    免费国内php空间_全球vps交流网站超级vps管理器网站名称:000webhost.com250MB硬盘空间,100GB数据流量有足够的空间存放你的网站,emails 和数据库. 服务器为百兆独享接入Internet, 所以可以提供100G的数据流量.PHP 和MySQL 数据库支持不想其他免费空间,对php和mysql的功能进行限制.在这里你可以使用最新版本的php和mysql. 所有以下php特性都支持:

    2026年2月11日
    4
  • mysql有多少个端口号_查看mysql端口号(mysql端口号是多少)

    mysql有多少个端口号_查看mysql端口号(mysql端口号是多少)查看 mysql 端口号 mysql 端口号是多少 2020 05 0722 11 45 共 10 个回答如何查看 mysql 的端口号 1 使用命令 showglobalva port 查看端口号 2 修改端口 编辑 etc my cnf 文件 早期版本有可能是 my conf 文件名 增加端口参数 并且设定端口 注意该端口未被使用 保存退出 总结 注意修改的端口不要被占用 而且要有规划 不要轻意的总

    2026年3月18日
    1
  • Try catch如何使用[通俗易懂]

    Try catch如何使用[通俗易懂]trycatch适用场合:一、兼容性浏览器的兼容性是程序员很头痛的事儿,往往一些出错会让我们查找许久,在使用trycatch能更好的解决兼容性出错的问题:由于不同浏览器报错提示也不尽相同,通过使用trycatch捕获的浏览器的报错提示,来判断用户使用的浏览器,然后做出对应的解决方法;那么,你如果用if,就只能反馈真或假,而不能直接抛出浏览器的报错内容。二、防止阻塞trycatch用…

    2022年6月20日
    46
  • onmousemove 换背景

    onmousemove 换背景1 换背景颜色 2 换背景图片 n background image url images 1 gif background repeat no repeat background position center m background image url images 2 gif background repeat no repeat background position center

    2026年3月26日
    2
  • 迅雷种子为什么php文件后缀,迅雷BT文件后缀是什么?[通俗易懂]

    迅雷种子为什么php文件后缀,迅雷BT文件后缀是什么?[通俗易懂]你是否正在寻找关于文件后缀的内容?让我把最实时的东西奉献给你:迅雷BT文件后缀是什么?BT是一个后缀名为.torrent的小文件,它里面保存了服务器地址、要下载的文件的大孝分成的块数以及各种下载参数设置,这个文件一般在20k-100k大小,可以把*.php直接改成*.torrent试试!要么就是文件制作出错!在去这个页面下载一次,当弹出迅雷下载的时候点取消.让Windows下载.会出现保存对话框…

    2025年8月11日
    7
  • web前端导航条制作

    web前端导航条制作以百度为例:没有加超链接,如果有人要用加上就好了<!DOCTYPEhtml><html> <head> <metacharset=”utf-8″> <title></title> <styletype=”text/css”> #nav{ height:60px; background:rgba(0,0,0,0.2); padding-left:24px;

    2022年7月22日
    11

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号