-atime、-ctime、mtime、-newer

本文详细解释了文件的ctime、atime、mtime以及如何使用这些时间属性进行文件查找和管理。通过具体的例子说明了如何利用这些属性进行文件的访问、修改及属性变更的操作,并介绍了find命令的高级用法newer。

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

ctime、atime、mtime、newer

ctime:区分一个文件或者目录的更改时间(change time),最后一次改变文件或目录(改变的是原数据即:属性)的时间如:记录该文件的inode节点被修改的时间。touch命令除了-d和-t选项外都会改变该时间。而且chmod,chown等命令也能改变该值

在Unix中,基本是无法知道一个文件的精确创建时间。更改时间(ctime)是指文件或者目录的属性(所有者、权限等等)被更改的时间。ctime在文件的内容改变的时候也会改变。如果一个文件需要备份的话,dump命令需要用到ctime。

你可以用ls -lc 命令来查看ctime。

atime:访问时间(access time),最后一次访问文件或目录的时间

访问时间(atime)就是一个文件的数据最后一次被访问的时间。例如,显示一个文件的内容或者运行一个shell脚本会更新文件的atime。

你可以用ls -lu命令查看。

mtime:修改时间(modify time),最后一次修改文件或目录的时间

修改时间(mtime)就是文件的目前内容最后被修改的时间。这是在一个长目录列表中显示的时间。

例子:

$ cat file

文件的atime将更新。

$ chmod g+w file

文件的ctime将更新。

$ echo "File contents" > file

文件的ctime和mtime将更新。

使用stat命令可以查看三时间值:如 stat filename

也可使用:        ls -l file : 查看文件修改时间

ls -lc file: 查看文件状态改动时间

ls -lu file: 查看文件访问时间

:::::

find /home -user 用户名

将属于用户名的所有文件都找出来。

find / -nouser

查找系统中不属于任何人的文件

find / -size +1000k

查找比1000k大的文件

----------------------------------------------分割线----------------------------------

newer

find {path} -newermt {time}

其实find -newermt的真正形式是find -newerXY {variable},旨在找到一些X属性比variable的Y属性更早的文件。其中X指代find的目标文件属性,Y代表参照属性。X可选a,c,m;Y可选a,c,m,t。acm意义分别为atime(访问时间),ctime(改变时间),mtime(修改时间)。t代表客观绝对时间,只作为参照属性存在,格式为yyyy-MM-dd hh:mm:ss。

find /lt/logs/ -type f -name "*" -newermt '2020-11-08' ! -newermt '2020-11-10' | xargs ls -lt

代表查找11-08,11-09两天的数据并以ls -lt格式进行显示;

find /lt/logs/ -type f -name "*" -newermt '2020-11-08' ! -newermt '2020-11-10' -exec rm {} \;

代表查找11-08,11-09两天的数据并进行删除,没有删除确认框;

备注:

| xargs ls -lt

xargs:代表将迁移查找出来的文件进行使用下一个命令【ls -lt】继续进行处理。

-exec必须以;结尾,所以使用\转义

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值