反转 cat 文件顺序

反转 cat 文件顺序

我需要进行日志分析,并且面临cat access.log*首先显示最新日志文件的问题。

我尝试对日志进行排序,这花了很多时间,因为我有几年前的日志。它们已经排序,只是以与我需要的不同的顺序显示。

所以我需要按以下顺序显示文件内容:

access.log.4
access.log.3
....
access.log

我该如何实现这一目标?

答案1

尝试这个:

ls -rt access.log* | xargs cat 

首先从最旧到最新列出文件,然后cat逐一列出。

答案2

zsh可以反转通配顺序:

cat access.log.*(On)
~/test % ls
1  2  3
~/test % cat 1
1
~/test % cat 2
2
~/test % cat 3
3
~/test % cat *
1
2
3
~/test % cat *(On)
3
2
1

答案3

cat $( ls | tac )

或者简单地

cat $( ls -r )

相关内容