단백질이 필요한 히트가 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 '^--'
명령에 추가할 수도 있습니다 .