一、简介
lsattr命令是用于显示文件扩展属性。
当用chattr执行改变文件或目录的属性后,可以执行lsattr指令查询其属性。
二、语法
语法:lsattr [选项] [文件或目录...]
参数说明:
参数 | 说明 |
-R | 递归显示目录及其子目录中所有文件的属性 |
-a | 显示所有文件,包括隐藏文件(以 . 开头的文件) |
-d | 显示目录本身的属性,而不是目录内容 |
-v | 显示文件版 |
-l | 使用长格式显示属性名称 |
-V | 显示程序版本 |
运行lsattr命令后,输出格式通常如下:
[root@app01 abc]# lsattr /etc/group---------------- /etc/group
每一列代表1个属性(类似 ls -l 的权限位)。
“-”表示未设置该属性,字母表示已设置(如 i、a)。
常见属性(与 chattr 对应):
s: secure deletion (安全删除)
u: undeletable (不可删除)
c: compressed (压缩)
S: synchronous updates (同步更新)
i: immutable (不可变)
a: append only (只能追加)
d: no dump (不备份)
A: no atime updates (不更新访问时间)
I: indexed directory (索引目录)
j: data journalling (数据日志)
t: no tail-merging (不进行尾部合并)
T: top of directory hierarchy (目录层次结构顶部)
e: extent format (扩展格式)
三、 实战
1、查看某一个文件属性
[root@app01 abc]# lsattr test.txt----i----------- test.txt
2、递归查看目录及内容属性
[root@app01 abc]# lsattr -R /app---------------- /app/soft/app/soft:---------------- /app/jdk/app/jdk:lsattr: 不支持的操作 While reading flags on /app/jdk/LICENSE---------------- /app/jdk/README---------------- /app/jdk/bin/app/jdk/bin:---------------- /app/jdk/bin/jar---------------- /app/jdk/bin/jarsigner====================此处省略部分内容====================
3、只查看目录本身属性(不查看子目录和文件)
[root@app01 abc]# lsattr -d /app---------------- /app
4、查看隐藏文件属性
[root@app01 abc]# lsattr -a /root/.bash_profile---------------- /root/.bash_profile
lsattr命令一般是结合chattr命令使用,如下:
[root@app01 abc]# chattr +i 1.txt[root@app01 abc]# lsattr 1.txt----i----------- 1.txt