如何在一系列文件中查找最后一个匹配项?

如何在一系列文件中查找最后一个匹配项?

我目录中有文件名范围从 0 到 47 的文件memOutput.X。我想查看所有这些文件中X最后一次出现的行。我可以运行VmData

grep VmData memOutput.0 | tail -1

从一个文件中获取最后一个匹配项,但不确定如何对一系列文件执行此操作。此外,grep VmData memOutput.* | tail -1仅显示文件中的最后一个匹配项memOutput.47。有没有替代方案grep

谢谢。

答案1

使用循环吗?

for file in memOutput.*; do
    grep -H VmData "${file}" | tail -n 1
done

或者如果你想要一行代码:

for file in memOutput.*; do grep -H VmData "${file}" | tail -n 1;done 

相关内容