특정 행에서 다른 특정 행으로 기록 [중복]

특정 행에서 다른 특정 행으로 기록 [중복]

데이터 모니터링도 하고 있고, 매일 데이터를 얻기 위해 크론 작업도 하고 있어요. 하지만 정크 데이터와 실제 데이터가 너무 많아서 파일이 거대해졌습니다. 예를 들어 내 데이터는

eg.hh.jk.ll.mm
ee.ff.gg.hh.uh
im.mi.jj.hh.ll
11.33.44.55.66

ff.gg의 데이터를 33.44와 일치하는 줄로 인쇄해야 합니다. 줄 번호를 사용할 수 없습니다. 그래서 내 결과는

ee.ff.gg.hh.uh
im.mi.jj.hh.ll
11.33.44.55.66

감사해요!

답변1

사용 sed:

sed -n '/ff\.gg/,/33\.44/p' file.log

첫 번째는 //시작 패턴(라인)과 일치하고 마지막 패턴은 //종료 패턴(라인)과 일치합니다.

예:

$ cat file.txt                        
14.33.ad.55.66
eg.hh.jk.ll.mm
ee.ff.gg.hh.uh
im.mi.jj.hh.ll
11.33.44.55.66
1f.fs.45.55.66
11.as.56.55.66

$ sed -n '/ff\.gg/,/33\.44/p' file.txt
ee.ff.gg.hh.uh
im.mi.jj.hh.ll
11.33.44.55.66

관련 정보