chmod是Linux中用于修改文件与目录权限的命令。基本语法如下:
chmod 选项[模式] 文件...
chmod 命令后的选项主要包括两种模式:符号模式和数字模式
1,符号模式:可以总结为:为 “什么用户” 对 “什么权限” 进行 “什么操作”
用户类型(什么用户):
u (user): 文件所有者
g (group): 文件所有者所在组
o (others): 所有其他用户
a (all): 所有用户,相当于 ugo
权限(什么权限):
r (read): 可读
w (write): 可写
x (execute): 可执行
操作符(什么操作):
+: 为指定的用户类型增加权限
-: 去除指定用户类型的权限
=: 设置指定用户权限的设置,即将用户类型的所有权限重新设置
举个栗子:
chmod u+x fliename
为fliename的文件所有者添加可执行权限
chmod u+wr fliename
为fliename的文件所有者添加可执行权限与写权限
chmod u-x fliename
为fliename的文件所有者减少可执行权限
chmod u=x fliename
为fliename的文件所有者只有可执行权限
2,数字模式:就是数字代表权限,位置顺序代表文件所有者,用户组,其它用户
权限位由9个权限位组成,每三位为一组,分别代表文件所有者(User)、用户组(Group)、其它用户(Other)的读、写、执行权限。
权限位的数字相加得到一个不大于8的数,表示相应的权限。例如:(x(执行)=1、r(读)=4、w(写)=2):
7 (rwx): 读 + 写 + 执行
6 (rw-): 读 + 写
5 (r-x): 读 + 执行
4 (r–): 只读
3 (-wx): 写 + 执行
2 (-w-): 只写
1 (–x): 只执行
0 (—): 无权限
举个栗子:
chmod 777 fliename
给fliename文件的用户,用户组,其它用户,都分配有读、写、执行权限
chmod 755 fliename
给fliename文件所有者设置读、写、执行权限,给用户组和其他用户设置读、执行权限
使用场景:chmod经常在给脚本文件(.sh)添加可执行权限时使用。