脚本:查找过去24小时内文件已被更改
例如,Mysql服务器正在我的Ubuntu机器上运行。 有些数据在过去24小时内发生了变化。
哪些(Linux)脚本可以find在过去24小时内发生更改的文件?
请列出文件名称,文件大小和修改时间。
要查找在特定特定目录及其子目录中过去24小时(上一整天)修改的所有文件,请执行以下操作:
find /directory_path -mtime -1 -ls
应该是你喜欢的
在1
之前是重要的,这意味着一天或更less的时间之前有任何改变。 1之前的A +
意味着至less在一天之前改变了任何东西,而在1
之前没有任何改变意味着它在一天之前改变了,没有更多的改变。
你可以这样做
find . -mtime 0
从man find
:
自上次修改每个文件以来的时间除以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
)。 它将以最后修改时间的格式列出它们,格式是可sorting和可读的( %T+
),后面是文件大小( %s
),后面是完整的文件名( %p
),每个文件夹都由制表符分隔\t
)。
2>/dev/null
抛出任何stderr输出,这样错误信息不会混浊水域; sort -r
首先对最近修改的结果进行sort -r
; 和| more
| more
列出一次结果的一页。
这个命令为我工作
find . -mtime -1 -print
其他方式:
find /<directory> -newermt "-24 hours" -ls
要么:
find /<directory> -newermt "1 day ago" -ls
要么:
find /<directory> -newermt "yesterday" -ls
对于其他未来登陆(包括我自己)的用户,添加一个-name选项来查找特定的文件types,例如: find /var -name "*.php" -mtime -1 -ls