首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查找-mtime返回错误的列表

查找-mtime返回错误的列表
EN

Stack Overflow用户
提问于 2013-06-29 00:28:45
回答 2查看 652关注 0票数 0

当我运行此命令时:

代码语言:javascript
复制
root:/home/mws 0$ ls -lrt `find /home/data/ll_misc_logs/ -mtime +20`

并且没有符合mtime设置的文件,20天,它会列出当前目录/home/mws的内容为什么?有没有一种方法可以不返回任何内容或返回一条消息?

EN

回答 2

Stack Overflow用户

发布于 2013-06-29 00:50:28

如果没有符合mtime设置的文件,则find ....的输出将扩展为...没什么。在这种情况下,您的命令变为ls -lrt,它将始终列出当前目录。

如果在典型的运行中没有太多的文件,这可能会更好地工作:

代码语言:javascript
复制
find /home/data/ll_misc_logs -mtime +20 -print0 | xargs -0 -r ls -ltr

但是,如果您得到的文件太多,以至于xargs决定将其分成多个调用,那么它可能也不会完全执行您想要的操作。

这让我想到了..。你到底想做什么?从表面上看,它看起来像是“按修改时间的顺序向我显示旧文件”,但它可能是一些更大的东西的一部分,可能会以更有效(也更不容易出错)的方式解决……

票数 3
EN

Stack Overflow用户

发布于 2013-06-29 02:58:41

如果您只想要一个超过20天的文件列表,请先按最旧顺序排序:

代码语言:javascript
复制
find /home/data/ll_misc_logs -mtime +20 -exec ls -l --time-style=%s {} \; | sort -n -k 6
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17369432

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档