我正在编写一个脚本,需要检查给定目录中的任何文件最近是否被修改。我以为我可以简单地使用find
,但是即使它没有找到匹配项,它也会报告成功:
$ touch afile
$ find . -mtime -1 -iname ????*
./afile
$ echo $?
0
$ find . -mtime +1 -iname ????*
$ echo $?
0
(我只是使用 iname 谓词来排除 '.' ,但与 的行为相同-type f
)
我宁愿不必解析 的输出,ls
因为这可能会很不稳定。
使用test -n "$(find . -mtime -1 -iname ????*)"
似乎给出了期望的结果,但我并不觉得这是一个特别优雅的解决方案。
我不需要知道哪些文件已被修改 - 只要最近有任何文件发生更改(其中“最近”通常是 1 天)。
有一个更好的方法吗?
(搜索谷歌,我只是得到了很多关于如何执行简单查找的 SEO 废话)