다음 줄에 다음 내용이 포함되어 있으면 인쇄

다음 줄에 다음 내용이 포함되어 있으면 인쇄

단백질이 필요한 히트가 0개 발견된 텍스트 파일이 있습니다. 저는 리눅스 수세즈를 사용하고 있습니다. awk 또는 sed를 사용하는 모든 명령을 사용하면 좋습니다.

# BLASTP 2.2.31+
# Query: ABO10498.2 DNA replication initiator protein [Acinetobacter baumannii ATCC 17978]
# Database: uniprot-reviewed%3Ayes+AND+proteome%3Aup000005640.fasta
# Fields: query id, subject id, evalue, % identity, % query coverage per subject
# 1 hits found
# BLASTP 2.2.31+
# Query: ABO10538.2 hypothetical protein A1S_0043 [Acinetobacter baumannii ATCC 17978]
# Database: uniprot-reviewed%3Ayes+AND+proteome%3Aup000005640.fasta
# 0 hits found
# Query: ABO10591.2 putative acetyl-coA synthetase/AMP-(fatty) acid ligase [Acinetobacter baumannii ATCC 17978]
# Database: uniprot-reviewed%3Ayes+AND+proteome%3Aup000005640.fasta
# Fields: query id, subject id, evalue, % identity, % query coverage per subject
# 23 hits found
# BLASTP 2.2.31+
# Query: ABO10598.2 eR transcriptional regulator [Acinetobacter baumannii ATCC 17978]
# Database: uniprot-reviewed%3Ayes+AND+proteome%3Aup000005640.fasta
# 0 hits found

원하는 출력:

# BLASTP 2.2.31+
# Query: ABO10538.2 hypothetical protein A1S_0043 [Acinetobacter baumannii ATCC 17978]
# Database: uniprot-reviewed%3Ayes+AND+proteome%3Aup000005640.fasta
# 0 hits found
# BLASTP 2.2.31+
# Query: ABO10598.2 eR transcriptional regulator [Acinetobacter baumannii ATCC 17978]
# Database: uniprot-reviewed%3Ayes+AND+proteome%3Aup000005640.fasta
# 0 hits found

답변1

패턴이 동일하게 유지되면 다음을 사용할 수 있습니다.

grep -B 3 '# 0 hits found'

# 0 hits found그러면 일치 항목 앞에 세 줄이 포함된 모든 줄이 인쇄됩니다 .

다양한 조회수는 연속된 선으로 구분됩니다 --. 따라서 | grep -v '^--'명령에 추가할 수도 있습니다 .

관련 정보