다음 데이터가 포함된 1000줄이 넘는 txt 파일이 있습니다.
alpha
hmld ahge 573
otndgd fhj 29
fidnt ank 1962
beta
jdkrs 2
adny 14
urmekhjf 6893
...
다음 결과와 함께 (dn)과 같은 내용이 포함된 줄을 검색하고 인쇄하려면(새 txt 파일에서) 어떻게 해야 합니까?
fidnt ank 1962 alpha
adny 14 beta
gedit를 사용하여 검색했지만 결함이 있습니다. 내 시스템: 우분투
감사합니다
답변1
다음을 수행할 수 있습니다.
<input-file.txt awk '
!NF {FNR=0; next}
FNR==1 {header=$0; next}
/dn/ {print $0, header}' > result.txt
F
빈 행이 발견될 때마다 각 행 의 레코드 번호를 재설정한 R
다음 해당 행 다음의 첫 번째 행(1인 경우)이 고려됩니다.N
FNR
머리글, 그런 다음 레코드를 인쇄합니다.머리글dn
입력의 어느 곳에서나 찾을 수 있습니다.
답변2
기본 grep:
grep 'dn' input-file.txt > result.txt