
데비안에서는 zgrep을 사용하여 gunzip으로 압축된 아카이브 파일을 grep할 수 있습니다. gunzip 파일을 만드는 이유는 간단합니다. 변경 로그와 같은 파일은 방대해서 압축률이 높습니다. 문제는 zgrep을 사용하면 특정 줄만 얻을 수 있고 위나 아래 정보는 얻을 수 없다는 것입니다. 상황에 맞는 정보를 제공합니다. 변화 자체에 대해. 설명하기 위한 예 -
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
이제 볼 수 있듯이 내 칩은 언급된 소프트웨어 패치 INTEL-SA-00223에 의해 수정된 것으로 보이는 RIDL, Fallout 및 Zombieload 버그의 영향을 받은 것으로 보이지만 보시다시피 꽤 불완전합니다.
해결 방법은 zless를 사용한 다음 / RIDL 또는 다른 키워드를 사용하는 것입니다. 알고 있지만 다른 방법이 있는지 아니면 그것이 유일한 해결 방법인지 알고 싶습니다. FWIW는 Intel이 해당 날짜에 이러한 문제와 기타 다양한 문제에 영향을 미치는 소프트웨어 패치를 만든 2019-05-14에 버그가 완화되었다는 사실을 알게 되었습니다. 파이프를 사용하여 '머리'와 '꼬리'를 사용해 보았지만 둘 다 효과적인 것으로 입증되지 않았습니다.
답변1
주틸스(데비안에 패키지됨zgrep
)는 모든 일반적인 상황별 매개변수를 지원하는 보다 강력한 버전을 제공합니다 .
$ zgrep -C3 Fallout /usr/share/doc/intel-microcode/changelog.Debian.gz
* New upstream microcode datafile 20190618
+ SECURITY UPDATE
Implements MDS mitigation (RIDL, Fallout, Zombieload), INTEL-SA-00223
CVE-2018-12126, CVE-2018-12127, CVE-2018-12130, CVE-2019-11091
for Sandybridge server and Core-X processors
+ Updated Microcodes:
--
* New upstream microcode datafile 20190514
+ SECURITY UPDATE
Implements MDS mitigation (RIDL, Fallout, Zombieload), INTEL-SA-00223
CVE-2018-12126, CVE-2018-12127, CVE-2018-12130, CVE-2019-11091
+ New Microcodes:
sig 0x00030678, pf_mask 0x02, 2019-04-22, rev 0x0838, size 52224
으로 설치할 수 있습니다 sudo apt install zutils
.
답변2
zcat
다음을 사용할 수 있습니다 grep
.
zcat changelog.gz | grep -C3 "Fallout"
-C3
grep
3줄의 컨텍스트(위 3줄, 아래 3줄)를 제공하라고 지시합니다 . 컨텍스트를 줄이려면 이 값을 줄이세요.
대신에 (각각 '이전'과 '이후'에 대해) -B<number>
및/또는 를 사용하여 이를 더욱 맞춤화할 수 있습니다 .-A<number>
답변3
또한 해결 방법일 뿐이지만 시도해 보셨나요?
gzip -cd changelog.gz | grep -C <num_lines> "Fallout"
num_lines
경기 전후의 상황을 표시하려면 (사용 -A <num_after>
및 -B <num_before>
미세 조정)?