我发现它grep的--color=always旗帜非常有用.但是,grep只打印带匹配的行(除非您要求上下文行).鉴于它打印的每一行都有一个匹配,突出显示不会增加尽可能多的能力.
我真的很喜欢cat一个文件,看到整个文件突出显示模式匹配.
有什么方法我可以告诉grep打印每一行被读取而不管是否有匹配?我知道我可以编写一个脚本来在文件的每一行上运行grep,但我很好奇这是否可以用标准grep.
我们都知道,我们可以在日志文件中搜索字符串并显示搜索字符串的周围行:
grep -AXX -BXX "searched" file.log
是否可以使用 docker log 命令执行相同的操作?
我想要做的是,如果已经知道我正在搜索的字符串发生在大约一小时前,则使用“since”与“after”和“before”,仅获取结果而不是所有日志,例如如下所示:
docker log --since=65m -A20 -B5“搜索字符串”[ID]
现在我将所有内容复制到一个文件中,有时会产生一个大文件,并使用 grep:
docker logs --since=65m [ID] >> file.log
grep -AXX -BXX "searched" file.log