카운터 번호 이름을 사용하여 한 줄을 하나의 파일로 저장하는 방법

카운터 번호 이름을 사용하여 한 줄을 하나의 파일로 저장하는 방법

다음과 같은 파일이 있습니다.

VLLKHCGRMRRFLIRNLRSFLSHISLNTLKSQESKV
LLSSQAKMYFSLRENFYLEGGIETTFVPSGEVYSRSFLKGISRI
LNPNALPTSPISENWVMVRPIVAQISLRRMTPSAIGAQTEMA
MKLELLLAFKYLIPKRKRLSSSIVSAFSMGIVALVVWLSVVFMSVIHGLQQRWVGDLASLHSSIRIEPSDKYYESYYYQIDSHAEASQYIYKTIGEKLLCEQTDPYDPDVDFLLPEAFPDPEFSDNGEMIDPVRTANERMLSLFSSRKGSFVEFEEGMGHVHMDRAFRGHKGEPRALSQYIAYSSDILYQQRMLPFEETDYSTEVLNRFNASSEGWLADFLVLQEKFRGMSVILPVVYRDQGYRVGDTASLSVFSVKKEGEVRFPLRVIGFYNPGVSPFGGKTIFIDKELAASIRSESEGLGMHNGWQVFLPSVQDIPVMKQSIQKIFKESEVSSYWEISSLYDYEFFKPILDQLQSDQVLFSIVSFIVLIVACSNIVTMSILLVNNKKKEIGILKAMGVSSSRLQLVFGLCGACSGLVGALLGSILAALTLKNLGILTHWLSKLQGREAFNPSFFGEQLPQDFHLPTVICLSLGALVLAAISGAIPAQHVARMQVSDILKSE
MVILVEAKHISKVIQQQDVCIPILKDVSFQLHAGEVVAITGASGSGKSSLLHLLGTLDQPSSGQILFFGKQVRREELPIFRNCRIGFIFQNFYLLEDDSVINNVLMPAQIARKDTGQKSKARERALALLESVGLVDRRDEKGSLLSGGEKQRVAIARALMNDPEIVLADEPSGNLDHRTADTIHELLLALAEKHRGVLIVTHDRELAEKCHREEILRDGTLMQRQ
LKDTVTPNYHPGMIRRFRPLTQTSTRSGYHKSE
LHVSCLEWLSMITFTRTPLRIAWARAKKNSGLKKIYIKTKILSVAWLIAFKIIFDAALGIKRWIGM
LADPVTTVWKSANIVFLCWRVLPLVRRKTTLEF
LARRRSGSFRGGRRSVFGSLVFSLGSGEHLLGDGY
VGARVRIDANRLSIPSMIVFIANNRRGLWVTIPF
VEEVGSGGLKRSLYFKEEEPCTLITLRSWLEKKET

파일의 각 줄을 원본의 줄 번호( 1, 2, 3등)와 같은 이름의 자체 파일에 저장하고 싶습니다. 또한 a로 시작하는 각 시퀀스 앞에 줄 번호를 추가해야 합니다 >.

따라서 다음과 1.txt같습니다.

>1
VLLKHCGRMRRFLIRNLRSFLSHISLNTLKSQESKV

및 2.txt:

>2
LLSSQAKMYFSLRENFYLEGGIETTFVPSGEVYSRSFLKGISRI

등등. 어떻게 해야 하나요?

답변1

다음을 사용할 수 있습니다 awk.

awk '{print > NR".txt"}' file

NR는 의 현재 줄 번호 awk이므로 위의 명령은 각 줄을 현재 줄 번호에 를 더한 이름의 파일로 인쇄합니다 .txt.

시퀀스에 앞에 추가할 내용을 추가하려면 >다음을 사용하세요.

awk '{print ">"$0 > NR".txt"}' file

>올바른 FASTA 형식(각 순서 앞에는 다음으로 시작하는 줄 과 순서 이름이 옵니다) 을 원하는 경우 다음을 사용하세요.

awk '{printf ">%s\n%s\n",NR,$0 > NR".txt"}' file

그러면 다음과 같은 파일이 생성됩니다.

$ cat 3.txt 
>3
LNPNALPTSPISENWVMVRPIVAQISLRRMTPSAIGAQTEMA

관련 정보