繁体   English   中英

查找过去 24 小时内更改过的文件

[英]Find the files that have been changed in last 24 hours

例如,MySQL 服务器正在我的 Ubuntu 机器上运行。 在过去 24 小时内,某些数据已更改。

哪些 (Linux) 脚本可以找到过去 24 小时内已更改的文件?

请列出文件名、文件大小和修改时间。

要在特定特定目录及其子目录中查找过去 24 小时(最后一整天)内修改的所有文件:

find /directory_path -mtime -1 -ls

应该是你喜欢的

- before 1很重要 - 这意味着在一天或更短时间内发生了任何变化。 相反, 1之前的+表示至少一天前发生了任何变化,而在1之前没有任何内容则意味着它在一天前被严格更改,不多也不少。

另一种更人性化的方式:

find /<directory> -newermt "-24 hours" -ls

或者:

find /<directory> -newermt "1 day ago" -ls

或者:

find /<directory> -newermt "yesterday" -ls

你可以这样做

find . -mtime 0

man find

[The] 自上次修改每个文件以来的时间除以 24 小时,其余的将被丢弃。 这意味着要匹配 -mtime 0,文件必须在过去不到 24 小时前进行过修改。

在 GNU 兼容系统(即 Linux)上:

find . -mtime 0 -printf '%T+\t%s\t%p\n' 2>/dev/null | sort -r | more

这将列出在过去 24 小时内修改过的文件和目录( -mtime 0 )。 它将以可排序和人类可读的格式( %T+ )列出它们以及最后修改时间,然后是文件大小( %s ),然后是完整文件名( %p ),每个都用制表符分隔( \t )。

2>/dev/null丢弃任何 stderr 输出,这样错误消息就不会混淆; sort -r按最近修改的优先排序结果; | more | more一次列出一页结果。

对于将来登陆这里的其他人(包括我自己),添加 -name 选项以查找特定文件类型,例如: find /var -name "*.php" -mtime -1 -ls

这个命令对我有用

find . -mtime -1 -print

找到文件...

您可以设置类型 f = 文件

find /directory_path -type f -mtime -1 -exec ls -lh {} \;

👍

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM