7

找到了几篇类似这样的帖子来告诉如何在文件夹中找到最新的文件。

我的问题是向前迈出一步,如何在同一文件夹中找到第二个最新文件?目的是我正在寻找一种方法来diff使用以前的日志获取最新日志,以便了解已更改的内容。日志每天生成。

4

5 回答 5

8

在链接解决方案的基础上,您可以只tail保留最后两个文件,然后将结果传递head给保留第一个文件:

ls -Art | tail -n 2 | head -n 1
于 2013-05-17T21:48:16.670 回答
7

diff最后(最近修改的)两个文件的待办事项:

ls -t | head -n 2 | xargs diff
于 2013-05-17T21:51:46.300 回答
1

这是一个基于统计的解决方案(在 linux 上测试)

for x in ./*; 
do
if [[ -f "$x" ]]; then
  stat --printf="%n %Y\n" "$x"; fi;
done | 
sort -k2,2 -n -r | 
sed -n '2{p;q}'
于 2013-05-17T21:58:56.563 回答
0

ls -dt {{your file pattern}} | head -n 2 | tail -n 1

将在您搜索的模式中提供第二个最新文件。

于 2017-12-11T09:35:17.200 回答
-3

这是命令返回文件夹中最新的第二个文件

ls -lt | tail -n 1 | head -n 2

请享用...!

于 2014-07-23T13:28:27.467 回答