Linux系统命令——帮助命令、文件权限命令
这篇文章我们学习Linux常用命令——帮助命令、文件权限命令。
在Linux系统中,一切皆文件,这些文件有不同的使用权限,在学习文件权限之前,我们先来学习Linux系统的帮助命令。
帮助命令
man
使用man获得帮助信息,基本语法如下:
man [命令或配置文件]
示例代码如下:
man ls # 查看ls命令的帮助信息
如下图所示:
当我们想退出,直接写q。
help
help获得shell内置命令的帮助信息,一部分基础功能的系统命令是直接内嵌在shell中的,系统加载启动之后会随着shell一起加载,常驻系统内存中,这部分命令被称为“内置(built-in)命令”,相应的其他命令被称为“外部命令”。
其基本语法如下:
help 命令
示例代码如下:
help cd # 查看cd命令的帮助信息
如下图所示:
当我们使用help命令查看非内置命令时,会报如下错误:
这时我们可以通过如下代码来使用help命令来查看非内置命令,
ls --help # 查看ls命令的帮助信息
如下图所示:
type
通过type命令来获得该命令是否为内置命令,其语法格式如下:
type 命令
示例代码如下:
type cd # 查看cd命令的命令类型
如下图所示:
文件权限
文件属性
Linux系统是一个多用户系统,为了保护系统的安全性,Linux系统对不同的用户访问同一文件或目录的权限做了不同的规定,在Linux中可以通过使用如下命令来显示一个文件的属性以及文件所属的用户和组:
ll
ls -l
如下图所示:
我们拿第三条信息来说明其代表的含义:
drwxr-xr-x. 2 root root 6 7月 27 15:42 公共
其中:
- drwxr-xr-x.:表示文件及文件权限说明;
- 2:表示有两个链接;
- 第一个root:表示该文件由root所拥有;
- 第二个root:表示该文件由root所属组拥有;
- 6:表示文件大小为6m;
- 7月 27 15:42:表示文件的创建日期;
- 公共:表示该文件名为公共;
在前面的字符串中drwxr-xr-x一共十个字符,其中:
- 第0位字符:代表这个文件是目录、文件或链接文件等等,其中-代表文件,d代表目录,l代表链接文件;
- 第1-3位字符:代表该文件的拥有者拥有该文件的权限;
- 第4-6位字符:所有者的同组用户拥有该文件的权限;
- 第7-9位字符:其他用户拥有该文件的权限;
如下图所示:
当没有权限就会用减号-来代替。
其中:
- r:代表可读read,可以读取、查看;
- w:代表可写(write),可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件;
- x:代表可执行(execute),可以被系统执行;
修改文件属组
修改文件或目录所属组使用chgrp命令,其语法格式如下:
chgrp [-R] 属组名 文件或目录
注意:当加上-R参数时,在更改某个目录的属组,该目录下的所有文件的属组都会更改。
在我这里,home目录下有a文件夹,里面有a.txt文件,如下图所示:
接下我们修改该文件夹的属组,示例代码如下:
chgrp -R xjl /home/a # 修改a文件夹及文件夹里面文件的属组为xjl
如下图所示:
通过上面的代码,我们把a文件夹及a.txt文件的所属组都修改了,当我们只想修改a文件夹的属组时,不加-R参数即可,如下图所示:
这样就只修改了a文件夹的所属组。
修改文件属主
修改文件属主使用chown命令,该命令也可以修改文件的属组,其语法格式如下:
chown [-R] 属主名 文件名
chown [-R] 属主名:属组名 文件名
注意:当加上-R参数时,在更改某个目录的属组,该目录下的所有文件的属组都会更改。
接下来,我们修改上面的a文件夹及a.txt文件属主,示例代码如下:
chown xjl /home/a/a.txt # 将a.txt文件文件属主该为xjl
如下图所示:
当我们想同时修改文件属主及文件属组时,可以执行如下代码:
chown root:root /home/a/a.txt # 修改a.txt文件的属主及属组为root
如下图所示:
修改文件权限
Linux文件权限有两种设置方法:一种是数字,一种是符号。
数字类型修改权限
文件权限的字符为:rwxrwxrwx,每三个字符为一组,一共三组,分别对应着拥有者、组、其他用户的权限。
rwx对应的数字分别为r=4,w=2,x=1。
每种身份各自的三个字符分数是需要累加的,例如:权限为:rwxrw-r--分数为:764,其中:
rwx=4+2+1=7
rw-=4+2+0=6;
r--=4+0+0=4。
使用chmod来修改文件权限,其语法格式如下:
chmod [-R] 数字 文件或目录
注意:当加上-R参数时,在更改某个目录的属组,该目录下的所有文件的属组都会更改。
示例代码如下:
chmod 764 a.txt # 修改a.txt文件权限为764
如下图所示:
符号类型修改权限
在rwxrwxrwx中,每三个字符对应着一组文件权限,一共三组,分别对应着拥有者(user)、组(group)、其他用户(others)的权限,分别用字母来代替:
- u:代表拥有者(user);
- g:代表拥有组(group);
- o:代表其他用户(others);
- a:代表所有用户(all);
使用chmod命令来修改文件权限,其语法格式如下:
chmod [{ugoa}{+-=}{rwx}] 文件或目录
其中:
- +:代表在原有权限基础上添加权限;
- -:代表在原有权限基础上去除权限;
- =:代表设置权限;
示例代码如下:
chmod u-x,g+x,o=rwx a.txt # 在原来的基础上拥有者权限去掉x执行权限,拥有组增加w写权限,其他用户的权限设置为rwx可读可写可执行
如下图所示:
好了,Linux系统——帮助命令、文件权限命令就学到这里了。
公众号:白巧克力LIN
该公众号发布Python、数据库、Linux、Flask、自动化测试、Git等相关文章!