每日一个Linux命令之chmod命令

每日一个Linux命令之chmod命令

1. chmod命令简介

查询chmod命令的man page,如下所示:
在这里插入图片描述
根据chmod命令的man page可知,chmod命令用于修改文件的mode,那么文件的mode是什么呢?之前在介绍ls命令时,通过ls -l命令可以输出文件的详细信息:
在这里插入图片描述
其中,每一行的最左边就表明了该文件的mode,也就是文件的权限信息。

最左边一栏共10个字母,第一个字母表明文件的类型。剩余的9个字母表示文件的权限,每三个为一组,共三组,分别为所属用户(user),所属组(group)和其他(other)对该文件的权限。以miniconda3文件为例,第一个字母d表明这是一个目录文件(directory),剩余的9个字母为rwxrwxr-x,表明所属用户(user),所属组(group)和其他(other)对该文件的权限分别为rwx,rwx,r-x。

权限分为三种:从左至右依次为读(r),写(w),执行(x),对应位置如果为-,则表明不具备x相应的权限。依然以miniconda3文件为例,rwxrwxr-x表明除了所属用户和所属用户组,其他用户对miniconda3文件均没有写(w)的权限。

2. 利用chmod命令变更文件权限

利用+/-增删权限

前文说到9个权限位分为3组,分别表示所属用户(user),所属组(group)和其他(other)对该文件的权限,我们可以使用+/-来增删user(u), group(g)和other(o)对文件的权限,使用语法如下,a表示为所属用户(user),所属组(group)和其他(other)同时增删权限

chmod [ugoa][+-][rwx] filename

例1:为test.txt的所属用户(user)增加写(w)权限

chmod u+w test.txt

例2:为test.txt的其他用户(other)删除写(w)和执行(x)权限

chmod o-wx test.txt

例3:为test.txt的所属用户(user)和所属用户组(group)增加读(r)和写(w)权限

chmod ug+rw test.txt

例4:为test.txt的所属用户(user),所属组(group)和其他(other)同时删除执行(x)权限

chmod a-x test.txt

利用权重来设置权限

我们经常可以看到chmod 777 xxx之类的命令,777即为权限权重的组合。读(r),写(w),执行(x)的权重如下表所示:

权限权重
r4
w2
x1

将上述权重进行组合,即可表示对一个文件的权限。例如,rwx可以表示为7(4+2+1),r-x可以表示为5(4+1),-wx可以表示为3(2+1),rw-可以表示为6(4+2)。

对于test.txt文件,如果我们对所属用户设置权限rwx(7),所属用户组设置权限r-x(5),其他用户设置权限r–(4),则可以使用如下命令:

chmod 754 test.txt
  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值