ls -l 可以显示一个文件的详细信息,如
[root@centos7 ~]# ls -l dir1
总用量 0
drwxr-xr-x. 2 root root 6 4月 13 14:49 dir2
从左往右看,d表示dir2是一个目录(d),rwx表示拥有者的权限,r-x表示组权限,r-x表示其他人权限,.表示特殊权限,2表示硬链接数,root表示dir2属于root,root表示dir2属于root组,6表示文件文件大小,4月13 14:49表示最后修改时间,dir2为名称
文件类型汇总
- - 普通文件
- d 目录文件
- b 块设备文件
- c 字符设备文件
- p 管道文件
- s 套接字文件
- l 链接文件
权限
r:可读 w:可写 x:可执行
为了方便,还可以用数字来表示一个文件的权限,r=4、w=2、x=1。如权限5=4+1也就是有r和x权限
文件状态
通过stat命令来查看
[root@centos7 dir1]# stat dir2/
文件:"dir2/"
大小:6 块:0 IO 块:4096 目录
设备:fd00h/64768d Inode:51040861 硬链接:2
权限:(0755/drwxr-xr-x) Uid:( 0/ root) Gid:( 0/ root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2026-04-13 14:49:59.587233369 +0800
最近更改:2026-04-13 14:49:59.587233369 +0800
最近改动:2026-04-13 14:49:59.587233369 +0800
创建时间:-
find命令
语法:find 路径 选项 参数
-type 根据文件类型查找 普通文件不使用-而用f表示
-perm 根据文件权限查找
-user 根据所有者查找
-group 根据用户组查找
-size 根据文件大小查找 +100k表示大于100k的文件 -100k则是小于100k的文件 等于号可以不写
-atime -mtime -ctime 根据访问时间、内容修改时间、文件状态修改时间来查找
单位为day,24小时,如-atime +1表示访问时间大于24小时之前的文件
-name 根据文件名查找,一般带通配符使用,如-name "fi*"
-exec 对每一个找到的文件执行接下来的命令,如find / -name "*.log" -exec rm {} \;
对找到的每个.log结尾的文件进行删除。语法上:{}表示找到的文件,\;表示转义
另一种方式为find / -name "*.log" -exec rm {} +,区别为一次对一个文件操作和一次
操作多个文件
管道符
- 符号表示:管道符是键盘上的竖杠符号"|",在Linux shell中被称为管道服务
- 功能作用:将前一个命令的输出结果作为后一个命令的输入,形成类似流水线的处理流程
原理
- 工作机制:利用文件描述符(fd)实现命令组合,将前一个程序的标准输出(fd1)转为后一个程序的标准输入(fd0)
- 执行特点:所有信息会在最后一个程序处理完成后才显示最终结果
- 语法格式:command1 | command2 [| command3...],支持多级管道连接
三通管道
- 特殊功能:在管道传输过程中同时保存一份副本输出
- 命令格式:使用tee命令实现,如command1 | tee | command2
- 典型应用:既处理数据又保存中间结果,常用于调试和日志记录
例如 ls /home | tee 1.txt | 1>2.txt,通过tty命令查询当前终端,可以顺带显示结果
如ls /home | tee /dev/pts/0 | 1>2.txt
参数传递
xargs:主要用于不接受标准输入的命令
例:cat 1.txt |xargs rm
Comments NOTHING