文件的基本权限和扩展权限有哪些?如何修改文件的权限?举例说明,针对某一文件改变其属主、同组用户、所有用户的某一基本权限的脚本代码
时间: 2025-01-02 07:45:56 浏览: 8
文件在Unix/Linux系统中拥有三种基本权限和三种扩展权限:
1. **基本权限**:
- **读(r)**:允许用户查看文件内容。
- **写(w)**:允许用户修改文件内容或执行可执行文件。
- **执行(x)**:仅对可执行文件有效,允许用户运行程序。
2. **扩展权限**(仅限目录):
- **添加文件(a)**:允许用户在目录下创建新文件。
- **删除文件(d)**:允许用户删除目录下的文件。
- **列表(l)**:允许用户查看目录内容。
修改文件权限通常是通过`chmod`命令完成的。命令语法如下:
```
chmod [permissions] [-R] file_or_directory
```
其中`permissions`是一个三位数字,每一位代表一类用户(用户、组、其他)的权限。比如`750`表示:文件主有读写执行权限(-rw-rwx),组成员有读和执行权限(r-x-w-),其他用户只有读取权限(---r--)。
下面是一个简单的Bash脚本示例,假设我们要将某个名为`example.txt`的文件的权限设置为:属主有全部权限,同组用户只读,其他人无权限:
```bash
#!/bin/bash
# 使用绝对路径
FILE="/path/to/example.txt"
# 更改权限
chmod 640 "$FILE"
echo "权限已更改:$FILE 的权限现在是 u=rw,g=r,o=---"
# 输出当前权限
echo "当前权限:"
ls -l "$FILE"
```
上述脚本中,`640`就是`u=rw,g=r,o=-`的十进制形式,分别对应于文件主(u)、组用户(g)和其他用户(o)的权限。
阅读全文