Tente isto:
ls -rt access.log* | xargs cat
Primeiro, liste os arquivos do mais antigo para o mais recente e, em seguida, cat
de cada um deles.
Eu preciso fazer uma análise de log e estou enfrentando um problema que cat access.log*
exibe o arquivo de log mais recente primeiro.
Eu tentei classificar logs que demoram muito tempo porque tenho logs de alguns anos atrás. E eles já estão classificados e exibidos em ordem diferente da que eu preciso.
Portanto, preciso exibir o conteúdo dos arquivos na seguinte ordem:
access.log.4
access.log.3
....
access.log
Como faço para isso?
Em zsh
, você pode reverter a ordem de globalização:
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
cat $( ls | tac )
ou simplesmente
cat $( ls -r )