这是Linux系统管理员最常用到的命令之一,它用于改变文件或目录的访问权限。该命令
有两种用法:
用包含字母和操作符表达式的文字设定法
其语法格式为:chmod [who] [opt] [mode] 文件/目录名
其中who 表示对象,是以下字母中的一个或组合:
u:表示文件所有者
g:表示同组用户
o:表示其它用户
a:表示所有用户
opt 则是代表操作,可以为:
+:添加某个权限
-:取消某个权限
=:赋予给定的权限,并取消原有的权限
而mode则代表权限:
r:可读
w:可写
那么,我们先根据上表得到权限串为:rwxrw-r--,那么转换成二进制数就是111 110 100,
再每三位转换成为一个十进制数,就得到764,因此我们执行命令:
chmod 664 a.txt
有两种用法:
用包含字母和操作符表达式的文字设定法
其语法格式为:chmod [who] [opt] [mode] 文件/目录名
其中who 表示对象,是以下字母中的一个或组合:
u:表示文件所有者
g:表示同组用户
o:表示其它用户
a:表示所有用户
opt 则是代表操作,可以为:
+:添加某个权限
-:取消某个权限
=:赋予给定的权限,并取消原有的权限
而mode则代表权限:
r:可读
w:可写
x:可执行
例如为 hello.sh添加执行权限则为 chmod u+x hello.sh
用数字设定法
而数字设定法则:chmod [mode] 文件名
关键是mode的取值,一开始容易被搞糊涂,其实很简单,我们将rwx看成二进
制数,如果有则有1 表示,没有则有0 表示,那么rwx r-x r--则可以表示成为:
111 101 100
再将其每三位转换成为一个十进制数,就是754。
例如,我们想让a.txt 这个文件的权限为:
自己 | 同组用户 | 其他用户 | |
可读r | 是 | 是 | 是 |
可写w | 是 | 是 | |
可执行x | 是 |
再每三位转换成为一个十进制数,就得到764,因此我们执行命令:
chmod 664 a.txt