Linux命令如何检查文件系统中的新文件?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (159)

我们有Linux机器,我们想知道在某个日期范围内添加了哪些新文件。

谢谢

提问于
用户回答回答于

有很多方法可以做到这一点。

第一:

start_date=201105040000

end_date=201105042359

touch -t ${start_date} start

touch -t ${end_date} end

find /you/path -type f -name '*you*pattern*' -newer start ! -newer end -exec ls -s {} \;

第二个: 找到20到21天之前修改的文件:

find -ctime +20 -ctime -21

查找在2500和2800分钟之前修改的文件:

find -cmin +2500 -cmin -2800

用户回答回答于

根据你正在使用的文件系统,它可能会或可能不会存储创建时间。

我的理解是,ext2 / 3/4不存储创建时间,

另一方面,Fat32包含创建时间戳IIRC。

如果你使用的是ext文件系统,你有两个选择:

1.找到所有在两个日期之间修改的文件(包括创建的文件,还包括刚刚编辑的文件)。你可以使用find来做到这一点。

2.创建一个脚本/ cronjob,以某个时间间隔记录文件系统的内容,例如

find / > filesystem.$(date +%s).log

然后运行差异来查看已添加的内容。

扫码关注云+社区

领取腾讯云代金券