Linux中find命令用法

本文详细介绍Linux下find命令的使用方法及各种参数选项,包括按文件名、权限、属主、属组、文件类型等条件进行查找,以及如何利用时间戳进行精确搜索。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux下的find命令,顾名思义,它是在目录结构中搜索文件,并执行指定的操作。Linux下find命令提供了相当多的命令参数,也就是以何种条件进行查找。

命令格式:find [路径] [命令参数] [表达式]
默认路径是当前路径,默认表达式是 -print;
-print:将查找到的文件输出到标准输出;
例如:在终端执行命令 find 或者 find. 或者find. -print 这三个命令得到的结果是一样的 ,都是将当前目录的所有文件输出到终端

-exec command {} \;
# 将查到的文件结果执行command操作
-ok和-exec用法相同, 不同之处在于-ok在操作前会询问用户

find命令的参数:
1、 -name filename
#查找名为filename的文件

这里写图片描述

2、 -perm
#按执行权限查找

例如查看执行权限为744的文件,使用-exec ls -l 操作,可以看到返回文件的实际权限
这里写图片描述

3、-user username
#按文件属主查找
-nouser
#查找无有效属主的文件

这里写图片描述

4、 -group groupname
#按属组查找,即查找属于groupname这个组的文件
-nogroup
#查找无有效属组的文

5、-newer f1
#查找更改时间比f1新的文件

这里写图片描述

6、-type b/d/c/p/l/f
#查找是块设备、目录、字符设备、管道、符号链接、普通文件

例如在当前目录的子目录levelDB中查找目录文件(可用于打印目录结构)
这里写图片描述

7、-size n[c]
#查找长度为n块或者n字节的文件

例如查找大小为10k的文件
这里写图片描述

按时间戳查找
8、–ctime -n +n
#按文件更改时间来查找文件,-n指n天以内,+n指n天以前

查找8天内更改的文件
这里写图片描述

10、-atime -n +n
#按文件访问时间来查找文件,-n指n天以内,+n指n天以前
-amin n
#最近n分钟访问的文件

例如查看最近5分钟访问过的文件
这里写图片描述

11、-mtime -n +n
#按文件最后修改时间(指的是文件内容修改的时间)来查找文件,-n指n天以内,+n指n天以前

需要注意的是:
文件的 create time,即ctime 是在写入文件、更改所有者、权限或链接设置时随inode 的内容更改而更改的。
因此,更改文件的内容即会更改 mtime 和 ctime,但是文件的 ctime 可能会在 mtime 未发生任何变化时更改 – 在权限更改,但是文件内容没有变化的情况下。
用ls 命令查看文件的 atime、ctime 和 mtime。
ls -lc filename 列出文件的 ctime
ls -lu filename 列出文件的 atime
ls -l filename 列出文件的 mtime

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值