grep -m을 사용하여 X 라인을 새 압축 파일에 저장

grep -m을 사용하여 X 라인을 새 압축 파일에 저장

다음 패턴의 파일이 있습니다.

@A00479:60:HL5HKDSXX:1:1101:1759:1000 1:N:0:CAGCGTTA
TGAGCCACAGACCCTGGATCCCTCCCTGAGGTCCCATGGGACGGGCAGGCTGGGCATACCTGCAGAGAAGATGTGGCCAGCCACGGCCAGGAACGCATCGGTCACCACAGGCTCAGACTGCAGGGAGATGTGCAGCTGACGCGCCACGTTG
+
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

grep을 사용하여 "@" 패턴이 있는 처음 100개의 시퀀스를 "선택"하고 새 압축 파일에 저장하고 싶습니다.

나는 이런 것을 시도하고 있습니다.

gzip | grep -m 10 @ test_seq_R1.fasta | cat test_seq_R1.fasta > test_seq_R1_zipped

그러나 기본적으로 원본 파일 test_seq_R1.fasta와 동일한 내용을 반환합니다.

@pattern으로 시작하는 처음 100개의 시퀀스를 선택하고 grep이를 사용하여 새 파일로 압축하는 방법은 무엇입니까 gzip?

감사해요

답변1

cat 명령에 파일 이름을 지정하기 때문에 파이프로 연결된 내용을 무시하고 파일만 출력합니다. 왜 고양이를 사용하고 싶은지 잘 모르겠습니다. gzip은 프로세스의 시작이 아닌 마지막에 있어야 합니다.

grep -m 100 @ test_seq_R1.fasta | gzip >  test_seq_R1_zipped.gz

다음 줄만 원하는 경우 "^@"를 사용하세요.시작그리고@. 그러면 @가 포함된 모든 줄이 생성됩니다.

관련 정보