首页
学习
活动
专区
工具
TVP
发布

每天一个Linux命令之chmod

每天一个Linux命令之chmod

命令简介: 更改文件模式或访问控制表,chmod程序将列出文件的文件模式位修改为由模式操作数指定。它也可以用来修改访问权限与列出的文件关联的控制表(ACL)。

概要

主要用途

通过符号组合的方式更改目标文件或目录的权限。

通过八进制数的方式更改目标文件或目录的权限。

通过参考文件的权限来更改目标文件或目录的权限。

参数

「mode」: 八进制数或符号组合

「file」: 指定需要更改权限的文件

选项

-c, --changes:当文件的权限更改时输出操作信息。

--no-preserve-root:不将'/'特殊化处理,默认选项。

--preserve-root:不能在根目录下递归操作。

-f, --silent, --quiet:抑制多数错误消息的输出。

-v, --verbose:无论文件是否更改了权限,一律输出操作信息。

--reference=RFILE:使用参考文件或参考目录RFILE的权限来设置目标文件或目录的权限。

-R, --recursive:对目录以及目录下的文件递归执行更改权限操作。

--help:显示帮助信息并退出。

--version:显示版本信息并退出。

返回值

返回状态为成功除非给出了非法选项或非法参数。

实例

符号说明

u符号代表当前用户。

g符号代表和当前用户在同一个组的用户,以下简称组用户。

o符号代表其他用户。

a符号代表所有用户。

r符号代表读权限以及八进制数4。

w符号代表写权限以及八进制数2。

x符号代表执行权限以及八进制数1。

X符号代表如果目标文件是可执行文件或目录,可给其设置可执行权限。

s符号代表设置权限suid和sgid,使用权限组合u+s设定文件的用户的ID位,g+s设置组用户ID位。

t符号代表只有目录或文件的所有者才可以删除目录下的文件。

+符号代表添加目标用户相应的权限。

-符号代表删除目标用户相应的权限。

=符号代表添加目标用户相应的权限,删除未提到的权限。

查看文件用户权限

第1位如果是d则代表目录,是-则代表普通文件。

第2到4位代表当前用户的权限。

第5到7位代表组用户的权限。

第8到10位代表其他用户的权限

其他操作

注意事项

该命令是GNU coreutils包中的命令,相关的帮助信息请查看man chmod或info coreutils 'chmod invocation'。

符号连接的权限无法变更,如果用户对符号连接修改权限,其改变会作用在被连接的原始文件。

使用-R选项一定要保留当前用户的执行和读取权限,否则会报错。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20201216A055M600?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券