chmod有以下三种格式
这四个参数的作用如下
mode的格式为 角色 + 操作 + 权限
其中角色有ugoa
4种(角色可省略,默认为a):
* u: 文件拥有者
* g: 与文件拥有者同属的用户组(group)
* o: 除了 u/g 以外的其它人
* a: 所有人
操作有+-=
3种:
* +: 增加权限
* -: 删除权限
* =: 取消权限
权限有rwxx
4种:
* r: 读取权限
* w: 写入权限
* x: 执行权限
* x:
有了以上的知识点补充,我们给出几个常用的mode写法:
chmod g+x filename
表示给用户组添加x
权限chmod ug=rwx filename
表示同时将文件所有者与用户组的权限设置为 rwx
权限chmod o-x filename
表示取消 其它用户的 x
权限chmod ug=rwx,o-x filename
等价于同时执行了第二和第三行的配置chmod +w filename
给所有人增加 w
权限(省略角色,则视为 a )除了mode, chmod还支持 octal_mode(八进制模式), octal_mode 使用3个八进制数来分别表示 ugo 的权限。
每个八进制数代表一个对象的 rwx 的设置。
将 rwx 的设置分别用三个二进制数表示,有权限则为1,无权限则为0,再将这3个数组成的二进制数转换为八进制。
具体对应关系如下:
权限 | 八进制 |
---|---|
--- | 0 |
--x | 1 |
-w- | 2 |
-wx | 3 |
r-- | 4 |
r-x | 5 |
rw- | 6 |
rwx | 7 |
(最好在看到数字的时候就能够知道对应的权限是什么,会大大提高工作的效率。)
例如 chmod 754 filename
等价于 chmod u=rwx,g=rx,o=r filename
mode 与 octal_mode 的区别在于:
octal_mode 可以方便地进行权限设置,书写更简单,但如果没有熟练记忆的话计算的过程会影响设置权限的速度。
mode 书写起来相对繁琐,但可读性更高,而且除了进行权限的设置,还支持权限的灵活增减,不需要关心无需改变的权限情况。
--reference
假设我们需要给文件 file_a 设置权限,此时发现同目录下的文件 file_b 的权限正是我们要设置给 file_a 的
此时我们就可以使用如下命令进行快速地配置
chmod --reference=file_b file_a
查看 chmod 的版本
chmod --version
查看 chmod 的帮助信息
chmod --help
-x (大x)不是特别明白,文章的描述如下execute/search only if the file is a directory or already has execute permission for some user
看完仍然不是理解,知道的朋友麻烦在评论中告知一下,谢谢啦
如对本文有疑问, 点击进行留言回复!!
linux下文本编辑器vim的使用方法(复制、粘贴、替换、行号、撤销、多文件操作)
网友评论