chmod命令

这是Linux系统管理员最常用到的命令之一,它用于改变文件或目录的访问权限。该命令
有两种用法:
用包含字母和操作符表达式的文字设定法
其语法格式为:chmod [who] [opt] [mode] 文件/目录名
其中who 表示对象,是以下字母中的一个或组合:
u:表示文件所有者
g:表示同组用户
o:表示其它用户
a:表示所有用户
opt 则是代表操作,可以为:
+:添加某个权限
-:取消某个权限
=:赋予给定的权限,并取消原有的权限
而mode则代表权限:
r:可读
w:可写

x:可执行

例如为 hello.sh添加执行权限则为 chmod u+x hello.sh

用数字设定法
而数字设定法则:chmod [mode] 文件名
关键是mode的取值,一开始容易被搞糊涂,其实很简单,我们将rwx看成二进
制数,如果有则有1 表示,没有则有0 表示,那么rwx r-x r--则可以表示成为:
111 101 100
再将其每三位转换成为一个十进制数,就是754。
例如,我们想让a.txt 这个文件的权限为:

 自己同组用户其他用户
可读r
可写w 
可执行x  
那么,我们先根据上表得到权限串为:rwxrw-r--,那么转换成二进制数就是111 110 100,
再每三位转换成为一个十进制数,就得到764,因此我们执行命令:
chmod 664 a.txt
### chmod 命令的用法及 Linux 文件权限设置 在 Linux 系统中,`chmod` 是一个用于更改文件或目录权限的命令。它允许用户通过符号模式或数字模式来调整文件或目录的访问权限[^1]。 #### 符号模式 符号模式使用特定的字符来表示不同的用户类别、操作和权限类型: - 用户类别: - `u`:文件所有者(user) - `g`:所属组(group) - `o`:其他用户(others) - `a`:所有用户(all) - 操作符: - `+`:添加权限 - `-`:移除权限 - `=`:设置权限为指定值 - 权限类型: - `r`:读取权限 - `w`:写入权限 - `x`:执行权限 例如,以下命令从“其他”用户段中删除指定文件的所有权限: ```bash sudo chmod o-rwx linuxmi.txt ``` 这条命令的作用是移除“其他”用户对 `linuxmi.txt` 的读、写和执行权限[^1]。 #### 数字模式 数字模式是一种更简洁的方式,通过将权限转换为八进制数字来设置。每个权限类型都有一个权重值: - `r`(读取)= 4 - `w`(写入)= 2 - `x`(执行)= 1 权限组合可以通过加总这些权重值得到。例如: - `rwx` = 4 + 2 + 1 = 7 - `rw-` = 4 + 2 + 0 = 6 - `r-x` = 4 + 0 + 1 = 5 以下命令将文件 `ping-pong.hex` 的权限设置为仅文件所有者可读、写和执行: ```bash chmod 700 ping-pong.hex ``` 这意味着文件所有者拥有完全权限(`rwx`),而组用户和其他用户没有任何权限[^2]。 #### 设置目录权限 对于目录,`x` 权限表示是否可以进入该目录。以下命令将目录权限设置为所有者可读、写和执行,组用户可读和执行,其他用户没有任何权限: ```bash chmod 750 my_directory ``` #### 查看当前权限 可以使用 `ls -l` 命令查看文件或目录的当前权限: ```bash ls -l linuxmi.txt ``` ### 示例代码 以下是一些常见的 `chmod` 使用示例: ```bash # 设置文件为所有人可读、写和执行 chmod 777 example.txt # 设置文件为仅所有者可读、写和执行 chmod 700 example.txt # 添加组用户的写权限 chmod g+w example.txt # 移除其他用户的任何权限 chmod o-rwx example.txt ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值