尝试调试服务器的问题,而我唯一的日志文件是 20GB 的日志文件(甚至没有时间戳!为什么人们将System.out.println()其用作日志记录?在生产中?!)
System.out.println()
使用 grep,我找到了我想查看的文件区域,第 347340107 行。
除了做类似的事情
head -<$LINENUM + 10> filename | tail -20
…这需要head通读日志文件的前 3.47 亿行,是否有一个快速简便的命令可以将行 347340100 - 347340200(例如)转储到控制台?
head
更新 我完全忘记了 grep 可以打印匹配的上下文......这很好用。谢谢!
使用 GNU-grep 你可以说
grep --context=10 ...