在 Linux 系统中,权限与组管理是保障系统安全与实现资源合理分配的核心机制,掌握如何查看文件或目录的权限及所属组信息,是系统管理员和开发者的必备技能,本文将详细介绍通过命令行查看权限组的方法,包括基础命令、权限符号解析、高级选项及实际应用场景。

基础查看命令:ls 与 -l 选项
最常用的查看权限组的方式是通过 ls 命令结合 -l(长格式)选项,在终端中执行 ls -l,会列出当前目录下所有文件和目录的详细信息,每行输出包含七部分,从左至右依次为:权限位、硬链接数、所有者、所属组、文件大小、修改时间、文件名。
输出类似 -rw-r--r-- 1 user group 1024 Jan 1 12:00 example.txt 的信息,
- 权限位(
-rw-r--r--):第一位为文件类型( 表示普通文件,d表示目录),后续九位分为三组,分别定义所有者(User)、所属组(Group)及其他用户(Others)的读(r)、写(w)、执行(x)权限。 - 所有者(
user):文件或目录的创建者或归属用户。 - 所属组(
group):文件或目录所属的用户组,组内用户共享该组的权限。
权限位的详细解析
权限位的三组权限(所有者、组、其他)直接决定了不同用户对文件的操作能力:
- 读(r):允许查看文件内容或列出目录中的文件。
- 写(w):允许修改文件内容或删除、重命名目录中的文件。
- 执行(x):允许运行文件(脚本、二进制程序)或进入目录。
若某位权限为 ,则表示无相应权限。rwxr-x--x 表示:所有者拥有读、写、执行权限;组用户拥有读、执行权限;其他用户仅拥有执行权限。

查看文件详细信息:stat 命令
ls -l 仅能显示基础权限信息,若需更详细的元数据(如精确的权限掩码、最后访问时间等),可使用 stat 命令,执行 stat filename,输出会包含 Access:(访问权限)、Modify:(修改时间)、Change:(状态改变时间)等字段。
stat example.txt 的输出中,Access: (0644/-rw-r--r--) 直接以八进制(0644)和符号(-rw-r--r--)双重形式展示权限,其中八进制数的每一位对应一组权限(4=r, 2=w, 1=x,如 6=4+2 表示读写权限)。
仅显示权限与组:简化输出
若仅需关注权限和组信息,可通过 awk 或 cut 命令过滤 ls -l 的输出。
ls -l | awk '{print $1, $3, $4}':提取权限位、所有者、所属组三列。ls -l | cut -d' ' -f1,3,4:按空格分割字段,提取第1、3、4列。
这种方式在批量处理文件权限时尤为高效,例如通过管道结合 grep 筛选特定组或权限的文件。

递归查看目录权限:-R 选项
当需要查看目录及其子目录下所有文件的权限组时,可在 ls 命令中添加 -R(递归)选项。ls -lR /path/to/directory 会逐级输出目录结构,但输出内容可能较多,若需更清晰的层级展示,可结合 tree 命令(需安装 tree 包):tree -pugo,-p 显示权限,-u 显示所有者,-g 显示所属组。
实际应用场景与注意事项
- 排查权限问题:当用户无法访问文件时,可通过
ls -l检查其所属组及权限,确认是否缺少读/执行权限,若目录权限为rwxr-x---,则仅所有者和组用户可访问,其他用户会被拒绝。 - 批量修改权限:结合
find命令可批量筛选特定权限的文件。find . -type f -perm 644查找当前目录下所有权限为644的普通文件。 - 符号链接权限:
ls -l显示的符号链接权限始终为lrwxrwxrwx,实际权限取决于目标文件,需通过ls -l 目标文件查看真实权限。
通过以上方法,可全面掌握 Linux 系统中权限组的查看方式,理解权限位的含义与组的作用,不仅能有效解决权限相关的系统问题,还能为后续的权限管理(如 chmod、chown、chgrp 命令)打下坚实基础,是提升 Linux 运维能力的关键一步。

















