【发布时间】:2019-10-24 22:14:50
【问题描述】:
问题:如何删除所有比最新修改的文件/s更旧的文件
以下一行命令将查找并删除除最新 6 个文件之外的所有文件 - 但我无法弄清楚如何删除所有比最新文件更旧的文件(可能有几个最新文件) -
ls -t | tail -n +6 | xargs rm --
详情: 我想删除所有早于最新修改文件日期的文件。不管它老了多少天 - 只要它比最新修改的文件老,它就需要被删除(比最新修改的文件早 100 天或 1000 天或 1 天甚至 1 分钟)。
Dir-
File 1 6/10/2019 9:40am
File 2 6/10/2019 9:37am
File 3 6/10/2019 9:40am
File 4 2/12/2019 12:39pm
File 5 7/01/2002 11:38pm
从这个目录中,运行命令后,我应该只能看到文件 1 和 3,所有其他文件都应该删除,无论这些文件有多旧,与最新修改的文件相比。
【问题讨论】:
-
如果有人在对问题投反对票时可以发表评论会很好,因为这将有助于 OP 了解问题中的任何问题
-
我没有投反对票,但为什么您只能看到文件 1 和 3 而不能看到文件 2?
-
文件 2 是上午 9:37,比文件 1 早,文件 3 在上午 9:40 修改/添加
-
我也没有投反对票,但这里的人想看看你到目前为止所做的尝试。你的帖子不包含任何代码,所以我敢打赌这就是它被投反对票的原因......
-
谢谢@GoinOff,我会更新我的问题。