find 按文件修改时间查找文件及find空文件夹
一、find按文件修改时间查找文件
- 相关时间概念
- 在Linux系统中,文件有三种时间概念很重要:
- mtime(一次内容修改时间):例如用vi编辑保存文件后,文件的mtime就会改变,并且如果mtime改变,atime(一次访问时间)和ctime(一次状态修改时间)也可能跟着改变。像对文件进行写入操作等会改变mtime。
- ctime(一次状态修改时间):当执行chmod(改变权限)、chown(改变所有者)等操作时,文件的状态改变,ctime就会改变,但修改时间(mtime)不一定改变。可以使用stat file命令查看文件的ctime。
- atime(一次访问时间):如执行ls、more等操作会更新atime,但chmod、chown、ls、stat等操作不会修改atime。可以使用ls -utl命令按atime顺序查看文件,使用ls -lut命令按访问时间顺序查看(加 -r可反序查看)。
- find按mtime查找文件示例
- 查找最近24小时内修改过的文件(以根目录/为例):
- 命令:
find / -mtime -1。这里的 -1表示在当前时间往前推1个24小时(24小时为单位)内修改过的文件。
- 命令:
- 查找3天前修改过的文件(以/home目录为例):
- 命令:
find /home -mtime +3。这里的 +3表示在当前时间往前推超过3个24小时修改过的文件。
- 命令:
- 查找2 - 3天前修改过的文件(以/tmp目录为例):
- 命令:
find /tmp -mtime 2。这里的2表示在当前时间往前推2个24小时到3个24小时(不包含2个24小时)之间修改过的文件。
- 命令:
- 按ctime查找文件示例
- 查找距现在48小时内修改过状态的文件(以根目录/为例):
- 命令:
find / -ctime -2。这里的 -2表示在当前时间往前推2个24小时(48小时)内修改过状态(如权限改变等)的文件。
- 命令:
- 查找5天前修改过状态的文件(以/var目录为例):
- 命令:
find /var -ctime +5。这里的 +5表示在当前时间往前推超过5个24小时修改过状态的文件。
- 命令:
- 查找3 - 4天前修改过状态的文件(以/usr目录为例):
- 命令:
find /usr -ctime 3。这里的3表示在当前时间往前推3个24小时到4个24小时(不包含3个24小时)之间修改过状态的文件。
- 命令:
二、find空文件夹
- 查找空文件夹(以根目录/为例)
- 命令:
find / -empty。这个命令会查找在系统中为空的文件或者文件夹,包括空的文件目录,或者目录中没有子目录的文件夹。如果只想查找空文件夹,可以结合文件类型判断进一步筛选。例如,如果确定要查找的空文件夹是普通文件夹(类型为d),可以使用类似find / -type d -empty的命令,其中 -type d表示查找类型为文件夹的对象。
本篇文章所含信息均从网络公开资源搜集整理,旨在为读者提供参考。尽管我们在编辑过程中力求信息的准确性和完整性,但无法对所有内容的时效性、真实性及全面性做出绝对保证。读者在阅读和使用这些信息时,应自行评估其适用性,并承担可能由此产生的风险。本网站/作者不对因信息使用不当或误解而造成的任何损失或损害承担责任。
