Centos 上出现了相当奇怪的错误消息。
我尝试运行这个命令:
find /tmp/something -type f -mtime +2h -exec cp '{}' /tmp/target \;
我得到的错误是:
find: invalid argument `-exec' to `-mtime'
在其他发行版中,“查找”会有所不同吗?
答案1
-mtime
使用几天,如果你需要 2 个小时,请检查以下内容:
find /tmp/something -type f -mmin +120 -exec cp '{}' /tmp/target \;
mmin 指定分钟数,因此 -mmin +120 将过滤超过 120 分钟(2 小时)之前的数据。手册中写道:
-m时间 n
文件数据的最后修改时间为 n*24 小时前。请参阅 -atime 的注释,了解舍入如何影响文件修改时间的解释。
-最小值
文件数据最后修改于 n 分钟前。
答案2
MacOS 上的实现find
与 Linux 上的实现略有不同。我相信您在 Linux 系统上遇到了上述错误。
在 Linux 上,mtime
仅接受 +- 和一个数字。数字是天数。
对于你想做的事情你必须使用mmin
-mmin n
File’s data was last modified n minutes ago.
此命令应该在 Linux 上运行:
find /tmp/something -type f -mmin +120 -exec cp '{}' /tmp/target \;