MacOS中如何检测文件近3天是否被复制?现有find命令无效
MacOS下检测文件复制情况的方法
一、查找近3/5天内新生成的复制文件
复制生成的新文件会带有全新的创建时间(Birth Time),MacOS的find工具支持通过-Btime参数筛选这个时间:
- 查找当前目录及子目录下,近3天内复制生成的文件:
find . -Btime -3 -ls
- 查找近5天内的:
find . -Btime -5 -ls
如果需要精确到小时,改用-Bmin参数(3天=4320分钟,5天=7200分钟):
# 近72小时(3天) find . -Bmin -4320 -ls # 近120小时(5天) find . -Bmin -7200 -ls
二、检测特定原文件是否在近3/5天被复制过
这个场景没有直接的完美方法,因为复制原文件本身不会修改原文件的核心属性,但可以通过系统日志尝试排查:
使用log命令查看Finder的操作日志(复制操作多通过Finder完成):
# 查看近3天内Finder的操作日志,搜索复制相关记录 log show --predicate 'process == "Finder"' --last 3d | grep -i copy # 查看近5天的 log show --predicate 'process == "Finder"' --last 5d | grep -i copy
注意:日志可能因系统设置、日志轮转等原因不全,且需要管理员权限才能查看完整日志。
关于你之前的命令无效的原因
MacOS的find工具中,-atime参数接收的是天数而非小时数,且-atime追踪的是文件访问时间,和复制操作没有直接关联,所以find . -atime -72h既参数格式错误,也不符合你的需求。
内容的提问来源于stack exchange,提问作者greenberet123
相关产品推荐
相关产品推荐

