我在bash上很糟糕,需要编写一个脚本来查找.log文件中regexp的最后一个实例。并返回整行。这可能与sed或我必须使用awk吗?
谢谢!
答案 0 :(得分:1)
只需找到与grep
匹配的所有匹配项,然后使用tail
获取最后一个匹配项:
grep regex file | tail -n 1
答案 1 :(得分:1)
这样做:
sed -nr '/YOUR_REGEXP/h; ${g;p}' INPUT_FILE
grep将通过存储绝对无用的数据来消耗你的内存:你不需要除了last之外的所有匹配但是它将被存储在内存中,但只有最后的出现/匹配将由tail -n1打印。 是的,GNU sed比grep快,支持更复杂的regexp。