使用ls-l或者ll可以查看文件的权限
- 如上输出结果,每一行都是一个文件的描述信息。一共6列,第一列就是文件的访问权限。
- 第一列一共十个字母,第一个字母为“d”(dir,文件夹)或者“-”(普通文件)
- 第一列后面九个字母为权限,三个字母为一组:rwx rwx rwx。第一组表示文件的所有者对于该文件的访问权限,第二组表示与所有者同组的其他用户对于该文件的访问权限,第三组(最后3位)表示其他组的用户对于该文件的访问权限。
- 在每一组权限中,都用3个字母来表示3种不同的权限,r表示读取权限,w表示写入权限,x表示执行权限,如果某个字母被“-”代替,那么没有对应权限。
使用chmod命令编辑文件权限
# 基本语法如下
chmod [options] filename
# 例如
chmod u+x test.sh
chmod 744 test.sh
- options表示各种权限选项。
- 授予对象:u所有者,g所有者所在组用户,o其他组用户
- +表示授予权限,-表示收回权限
- 字母表示权限的时候:r读取,w写入,x执行。
- 数字表示权限的时候:4读取,2写入,1执行。
- “744”分别表示文件所有者、所有者所属的用户组以及其他组的权限。其中7是由4、2和1这三个数字相加而得,4表示读取权限。
字母表示权限和数字表示权限的互换
例如某文件权限为“-rwxrw-r--”,那么换成数字表示为764,转换方式如下:
- 后面9位字符(r、w、x、-),每3个字符为一组。
- 每一组3个数字对应一个三位数的二进制数字,如果对应位上面是字母则为1,如果对应位是“-”则为零。
- rwx对应111,转换十进制为7;rw-对应110,转换十进制为6;r--对应100对应100,转换十进制为4
十进制数字表示 | 二进制数字表示 | 字母表示 |
---|---|---|
7 | 111 | rwx |
6 | 110 | rw- |
5 | 101 | r-x |
4 | 100 | r-- |
3 | 011 | -wx |
2 | 010 | -w- |
1 | 001 | --x |
0 | 000 | --- |