No Debian você pode usar o zgrep para grep através de um arquivo compactado com gunzip. A razão para fazer um arquivo gunzip é bastante fácil, arquivos como changelogs são vastos e podem ser altamente compactados. O problema é que com o zgrep você obtém apenas uma linha específica e nenhuma informação acima ou abaixo. para fornecer informações contextuais. na própria mudança. Um exemplo para ilustrar -
usr/share/doc/intel-microcode$ zgrep Fallout changelog.gz
* Implements MDS mitigation (RIDL, Fallout, Zombieload), INTEL-SA-00223
* Implements MDS mitigation (RIDL, Fallout, Zombieload), INTEL-SA-00223
Agora, como pode ser visto, parece que meu chip foi afetado por bugs RIDL, Fallout e Zombieload que parecem ter sido corrigidos por um patch de software INTEL-SA-00223 que é mencionado, mas como pode ser visto, está bastante incompleto.
A saída é usar zless e depois /RIDL ou qualquer uma das outras palavras-chave e então você sabe, mas estou querendo saber se existe alguma outra maneira ou essa é a única solução alternativa? A FWIW soube que os bugs foram mitigados em 2019-05-14, onde a Intel fez patches de software afetando esses e vários outros problemas naquela data. Eu tentei usar 'cabeça' e 'cauda' usando tubos, mas nenhum deles provou ser eficaz.
Zutils ( empacotado no Debian ) fornece uma versão mais capaz
zgrep
que suporta todos os parâmetros contextuais usuais:Você pode instalá-lo com
sudo apt install zutils
.Também é apenas uma solução alternativa, mas você tentou
exibir o
num_lines
contexto antes e depois da partida (usar-A <num_after>
e-B <num_before>
ajustar)?Você pode usar
zcat
e um normalgrep
:-C3
dizgrep
para fornecer 3 linhas de contexto (3 acima, 3 abaixo). Reduza isso se quiser menos contexto.Você pode personalizar ainda mais usando
-B<number>
e/ou-A<number>
em vez disso (para 'antes' e 'depois', respectivamente.)