EMBOSS, seqtk, BBMap 등 서열 데이터를 용이하게 다룰 수 있는 상당히 많은 종류의 생명정보학 응용프로그램이 이미 존재하고 있으며, 파이썬이나 펄을 이용하여 원하는 기능을 수행하는 스크립트를 손수 작성하는 것도 가능하다. 그러나 리눅스에 기본적으로 설치된 일반 유틸리티를 bash 환경에서 적절히 활용하면 작업의 작업의 능률을 크게 향상시킬 수 있다. 이러한 도구를 사용하여 서열 자료를 다루는 기법을 부록에서 소개하고자 한다. 또한 명령행 환경에서 유용하게 활용할 수 있는 힌트를 제시한다. 일부는 본문에서 다루어진 것도 있다.
일반적으로 FASTA file은 60 문자마다 개행문자를 삽입하여 줄바꿈을 한다. 이를 다시 펼쳐서 하나의 서열이 하나의 줄로 이루어지게 unwrapping을 실시하면 후속 작업이 매우 편리해질 수 있다. 예를 들어서 큰 FASTA 파일을 천 개 서열 단위로 잘게 분할하려면 unwrapping을 한 다음 ‘split -l 200 unwrapped_fasta.fa’ 명령을 실행하면 된다.
$ awk '/^>/ {printf("%s%s\n",(N>0?"\n":""),$0);N++;next;} {printf("%s",$0);} END {printf("\n");}' infile.fa > unwrapped.fa
Unwrapped FASTA file의 서열 길이는 awk를 사용하여 간단하게 계산할 수 있다.
$ awk '{if(/>/){n=$1}else{print n " " length($0)}}' unwrapped.fa
유용한 SED 한 줄 스크립트 모음: https://www.pement.org/sed/sed1line.txt