550만 줄이 포함된 파일이 있습니다.
예:
chr1 10000 10468 + (TAACCC)n Simple_repeat Simple_repeat
chr1 10468 11447 - TAR1 Satellite telo
chr1 11504 11675 - L1MC5a LINE L1
chr1 11677 11780 - MER5B DNA hAT-Charlie
chr10_GL383545v1_alt 11877 11980 - Alu ERV1
chr11_BL383595v1_alt 12077 12980 - Alu ERV1
chr3 11504 11675 - L1MC5a LINE L1
_
첫 번째 열에 없는 행만 유지하고 싶습니다.
출력은 다음과 유사합니다.
chr1 10000 10468 + (TAACCC)n Simple_repeat Simple_repeat
chr1 10468 11447 - TAR1 Satellite telo
chr1 11504 11675 - L1MC5a LINE L1
chr1 11677 11780 - MER5B DNA hAT-Charlie
chr3 11504 11675 - L1MC5a LINE L1
원하지 않는 행이 얼마나 많이 존재하는지 모르겠습니다. 나는 을 사용하는 것을 선호 awk
하지만 일반 bash 명령도 작동합니다.
답변1
awk
컬럼 처리에 가장 적합
awk '$1 !~ /_/' file
!~
패턴과 일치하지 않는 항목이 있는지 확인할 수 있습니다.
그리고grep
grep -v '^\S*_' file
혹은 \S
인식이 안되는 경우,
grep -v '^[^[:space:]]*_' file