Shell 通用命令之文件权限

255 阅读4分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第4天,点击查看活动详情

您能在这里看到啥

  1. 文件的权限和归属
  2. 默认文件权限
  3. 设置文件权限

文件的权限和归属

经过shell通用命令之ls这篇文章中,我们知道的,如果您想查看文件的属性.需要使用ls -l命令.这里我们就直接查看一下测试文件的文件权限和归属.

截屏2022-11-24 20.58.18.png

从上图,我们看到很多熟悉的指令.如

  • drwxr-xr-x

  • -rw-r--r--

下面我们一一来记录一下,他们都代表啥子意思.

  • 文件访问权限 | 指令 | 说明 | | --- | --- | | r | 读取权限,允许查看文件内容 | | w | 写入权限,允许修改文件内容 | | x | 可执行权限,允许程序运行 | |-| 没有权限

  • 文件类型 | 指令 | 说明 | | --- | --- | | - | 文件 | | d | 目录 | | l | 软链接 | | p | PIPE管道文件 | | s | socket通信套接字文件 | | c | 字符设备文件 | | b | 块设备文件 |

通过上面指令的说明,我们再来看一下上面熟悉的指令

  • -rw-r--r--

    我们来简单的分解一下这个熟悉的指令 | 指令 | 说明 | 讲解 | --- | --- |--- | | - | 代表文件类型| 从上面,我们知道-代表文件夹,从测试文件中.我们能看出cdn是文件夹. | rw- | 代表属主文件权限| 属主对文件有读写权限 | r-- | 代表属组文件权限 | 属组对文件只用读权限 | r-- | 代表其他人文件权限| 其他人对文件只有读权限

简单总结, 文件权限是由三个指令组合的.

默认文件权限

通过上面的测试文件权限显示,我们简单的涉及到文件权限的部分权限指令.下面把对应的权限,进行一下记录.

指令说明
rwx读写并且可执行权限
rw-读写权限
r-x读和执行权限
r--只读
-wx写和执行权限
-w-只写
--x只执行
---啥权限都没

通过上面的总结,我们现在来看一下默认的文件权限是啥.

  • 文件默认权限

    1. 创建测试文件touch test.txt

    2. 查看文件权限ls -l test.txt,结果如下所示

      截屏2022-11-25 21.02.50.png

    3. 从上面我们知道,macos创建的文件,默认文件权限是rw-即读写权限.

  • 文件夹默认权限

    1. 创建测试文件夹mkdir test

    2. 查看文件夹权限ls - l test,结果如下所示

      截屏2022-11-25 21.06.50.png

    3. 默认的文件夹权限是rwx.读写执行权限.

通过对默认权限的学习,发现有一个umask的指令存在,由于这个我也不太了解,等我好好学习后,再把文件默认权限,做一下更新,如果感兴趣的同学,可以查找一下umask相关资料.也可以留言推荐一下.

设置文件权限

通过上面的默认权限的简单了解后,有一种想法,既然有默认权限,那必然可以修改权限.下面我记录一下自己的理解.

  1. 修改文件权限之chmod

    说到修改权限,那就要请出我们的主角chmod指令.该指令是用来修改文件和文件夹的权限.语法如下所示

    语法 : chmod [who] opration permission name | 指令 | 说明 | | --- | --- | |who| u: 属主 g: 属组 o: 其他用户 |opration| + -: 增加或减少权限 |permission| r w x: 修改成什么权限 |name| 文件或文件夹名字

    举例说明

    1. 查看test.txt权限,如下所示

      截屏2022-11-25 21.27.39.png

      此时`test.txt文件属主只用写的权限.下面我们来给它增减一下的权限.

    2. 修改权限

      • chmod u+r test.txt

      • ls -l test.txt

        截屏2022-11-25 21.30.47.png

      是不是很简单,我们就给test.txt文件属主增加的的权限.反之,也可以关闭的权限.这里就不再举例说明了.

  2. 修改属主之chown 语法 : chown [who] name

    命令说明
    chown rt text.txt 修改text.txt文件属主rt
    chown :rt text.txt 修改text.txt文件属组rt
    chown rt:rt text.txt 修改text.txt文件属主属组属主为rt
    chown rt.rt text.txt 修改text.txt文件属主属组rt

系列文章

参考文章