首页>教程>Linux 命令手册>Linux lsattr 命令 | 查看显示文件和目录的属性

Linux lsattr 命令 | 查看显示文件和目录的属性

Linux lsattr ( list attribute ) 命令用于查看显示文件和目录的属性。

lsattr 命令的定义解释

lsattr ( list attribute ) 命令用于查看显示文件和目录的属性。在文件或目录上执行 lsattr 命令时,它会显示指定文件或目录的文件属性,并提供有关操作系统如何处理文件的附加信息。

在本教程中,我将介绍每个属性的含义以及 lsattr 命令的示例。

lsattr 命令语法

lsattr [OPTIONS] [FILES.../DIRECTORIES...]
  • [OPTIONS]:指定一个或多个选项来调整 lsattr 命令的输出,可选。
  • [FILES.../DIRECTORIES...]:指定一个或多个文件或目录来显示属性,可选;当不提供该参数,输出当前目录下的文件和子目录的属性。

lsattr 命令使用示例

获取一个文件的属性

获取一个文件 file1.txt 的属性:

lsattr file1.txt

输出内容:

--------------e------- file1.txt

e 属性说明该文件使用扩展格式存储。

获取多个文件的属性

获取两个文件 file1.txtfile2.txt 的属性:

lsattr file1.txt file2.txt

输出内容:

--------------e------- file1.txt
--------------e------- file2.txt

e 属性说明该文件使用扩展格式存储。

获取多个文件的属性

获取两个文件 file1.txtfile2.txt 的属性:

lsattr file1.txt file2.txt

输出内容:

--------------e------- file1.txt
--------------e------- file2.txt

e 属性说明该文件使用扩展格式存储。

只获取目录的属性

使用 -d 选项,只输出目录的属性,而不输出其内部文件和子目录的:

lsattr -d commands-workspace

输出内容:

--------------e------- commands-workspace

e 属性说明该文件使用扩展格式存储。

获取目录及其子目录内的属性

使用 -R 选项,递归的输出目录内文件、子目录的属性,及子目录内部内容的属性:

lsattr -R commands-workspace

输出内容:

--------------e------- commands-workspace/dir1

commands-workspace/dir1:
--------------e------- commands-workspace/dir1/source1.c
--------------e------- commands-workspace/dir1/test.txt

--------------e------- commands-workspace/link1.txt
--------------e------- commands-workspace/file1.txt
--------------e------- commands-workspace/file2.txt

e 属性说明该文件使用扩展格式存储。

获取隐藏文件的属性

使用 -a 选项,能够获取隐藏文件的属性:

lsattr -a commands-workspace

输出内容:

------ commands-workspace/dir1
--------------e------- commands-workspace/link1.txt
--------------e------- commands-workspace/file1.txt
--------------e------- commands-workspace/.hidden   <-----------隐藏文件
--------------e------- commands-workspace/..
--------------e------- commands-workspace/file2.txt
--------------e------- commands-workspace/.

. 开头的文件为隐藏文件。

lsattr 命令输出的文件属性解释

如下给出了使用 lsattr 命令列出文件或目录属性时,所有属性的解释说明:

属性缩写属性名称解释说明
-无属性没有设置属性
b备份日常备份操作中包含该文件,如:dump
c压缩使用特定于文件系统的压缩算法压缩的文件
d非转储(Dump)该文件不是文件系统备份操作中包含的文件,如:dump
h隐藏该文件对大多数列表实用程序隐藏
i不可变文件不可修改、不可删除、不可重命名
s同步更新在写入操作完成之前,数据会被物理地写入磁盘,以确保在系统崩溃时数据的完整性
S系统文件该文件被标记为系统文件,表明其对系统运行的重要性
T顶级目录(AIX)(AIX特定)该属性指示文件系统层次结构中的顶级目录
u不可删除文件不能使用标准删除命令删除,但仍然可以用新数据覆盖它
A无访问时间更新不更新文件的访问时间(最后一次读取文件的时间),从而在访问时间信息不重要的场景中提高性能
X无执行权限该文件即使具有可执行权限,也不能作为程序执行
a只追加可以将新数据写到文件末尾,但不能修改已有的内容
e扩展格式文件数据使用 extents 格式存储,extents 是磁盘上连续的大块,可以提高大文件的性能
j数据日志文件系统维护一个日志来跟踪对文件所做的更改,以便在出现错误时更快地恢复
t顶级目录此属性与 T 类似,但根据文件系统的不同,其含义可能略有不同
P项目层次结构(特定于某些文件系统)该属性用于基于项目的配额管理
N内联数据小文件直接存储在 inode 中,而不是单独的数据块,从而提高了非常小的文件的性能
I索引目录该目录使用索引结构,以便更快地列出和搜索目录
E已加密使用特定于文件系统的加密算法对文件内容进行加密

lsattr 命令选项解释

如下给出了 Linux lsattr 命令中所有选项的解释说明:

选项解释说明
-R递归列出目录及其子目录和文件的属性
-V显示程序版本
-a列出目录中的所有文件,包括以 . 开头的隐藏文件
-d像列出其他文件一样列出目录,而不是列出它们的内部文件和子目录
-l输出时使用属性的长名称而不是单字符缩写
-p列出文件的项目号
-v列出文件的版本号 / 生成编号

结语

在本教程中我们介绍了如何使用 lsattr ( list attribute ) 命令用于查看显示文件和目录的属性。在文件或目录上执行 lsattr 命令时,它会显示指定文件或目录的文件属性,并提供有关操作系统如何处理文件的附加信息。

该 lsattr 命令可以在 Linux 系统中使用,也可以在 FreeBSD 系统中使用。