🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] # 文件基本属性 Linux系统中,每个文件有10个属性,分别如下所示: ![](https://blankj.com/gitbook/linux/README/ls_l_10.png) ` ` 其中,第 0 位表示文件类型: * 当为`d`则是目录; * 当为`-`则是文件; * 若是`l`则表示为链接文档(link file); * 若是`b`则表示为装置文件里面的可供储存的接口设备(可随机存取装置); * 若是`c`则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。 接下来的,以三个为一组,且均为`rwx`的三个参数的组合。其中,`r`代表可读(read)、`w`代表可写(write)、`x`代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号`-`而已。其中,1-3 位确定 owner 对该文件的权限;4-6 位确定 group 对该文件的权限;7-9 位确定 other 对该文件的权限。 # 查看文件的属性 `ls -l`命令显示的前 10 位 如下所示。 ~~~ ➜ ALog git:(master) ls -l total 112 drwxr-xr-x 11 Blankj staff 374 Dec 6 23:39 alog -rw-r--r-- 1 Blankj staff 11336 Dec 4 17:08 LICENSE -rw-r--r-- 1 Blankj staff 6932 Dec 6 23:44 README.md ~~~ # 更改文件属性 ## 更改文件 owner ~~~ chown [–R] 属主名 文件名 chown [-R] 属主名:属组名 文件名 ~~~ ## 更改文件 group ~~~ chgrp [-R] 属组名 文件名 ~~~ ## 更改文件权限 更改文件权限有两种方法,一种是数字法,一种是符号法。 # 数字法修改文件属性 ~~~ chmod [-R] xyz 文件或目录 ~~~ 文件的基本权限就有九个,owner/group/others 每个都有各自的`rwx`权限,我们使用数字来代表各个权限,如下所示: ~~~ r: 4 w: 2 x: 1 ~~~ 每种身份(owner/group/others)各自的`rwx`是需要累加的,当文件权限为`rwxrwx---`,则用数字表示为: ~~~ owner = rwx = 4 + 2 + 1 = 7 group = rwx = 4 + 2 + 1 = 7 others = --- = 0 + 0 + 0 = 0 ~~~ 例如要开启`alog`目录及目录下所有文件的所有权限,可以使用`chmod -R 777 alog`命令。 # 符号法修改文件属性 ~~~ u +(加入) r chmod g -(除去) w 文件或目录 o =(设定) x a ~~~ 我们就可以用`u`,`g`,`o`,`a`来代表 owner,group,others,all。 如果我们要将文件权限设置为`rwxr-xr--`,可以使用`chmod u=rwx,g=rx,o=r 文件名`命令。