linux服务器上的blast比对(my version:ncbi-blast-2.8.1+)

一:安装blast

1. 下载blast:

$wget ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-2.9.0+-x64-linux.tar.gz

2. 解压: 

$tar zxvf ncbi-blast-2.6.0+-x64-linux.tar.gz

3. 将blast添加进环境

$vim ~/.bashrc

$export PATH=/data1/spider/ytbiosoft/ncbi-blast-2.8.1+/bin:$PATH (不加的话就全路径调用)

4. 调用.bashrc

source  ~/.bashrc

blast安装完成,可以blastn -version查看你的版本。

二:建database

确保安装好了本地blast之后,下载想要的序列建库(以下以nr,nt建库为例).

1. 建库:

核酸

$nohup makeblastdb -in nt -input_type fasta -dbtype nucl -parse_seqids -out nt -logfile nt.log &     建议挂后台

蛋白序列

$nohup makeblastdb -in nr -input_type fasta -dbtype prot -parse_seqids -out nr -logfile nr.log &    建议挂后台

2. 比对

$blastx -query *.fasta -db nr -out out.file.name

$blastn -query *.fasta -db nt -out out.file.name

一些比对的参数:


-query     需要比对的序列

-db     建立好的数据库名

-out     输出文件的名字

-evalue     evalue值(默认10)

-outfmt 【6=Tabular,11= BLAST archive (ASN.1)】  输出文件格式【一般选6或11】

-num_threads  线程数


输出的文件形式也可以选择其他:

##用diamond建库比对更快(只限于比对蛋白数据库)

$diamond makedb --in nr.fa -d nr

$diamond blastx -d nr -q *.fasta -o out.file.name

3. 查看输出结果(我输出的是11,asn格式)

4. 如果你输出6的话如下:

会生成12列的tabular格式文件,每一列代表的是啥如下:

 1. qseqid query (e.g., gene) sequence id

 2. sseqid subject (e.g., reference genome) sequence id

 3. pident percentage of identical matches

 4. length alignment length

 5. mismatch number of mismatches

 6. gapopen number of gap openings

 7. qstart start of alignment in query

 8. qend end of alignment in query

 9. sstart start of alignment in subject

 10. send end of alignment in subject

 11. evalue expect value

 12. bitscore bit score

5. 最后你可以把你想要的那一列或几列提取出来:

$cat file.name |awk '{print $n}' > new.file.name    [$n: 你需要那列n就是几]

6. 你也可以对生成的文件按第4列长度排序:

$cat file.name |sort -n -r -k4 > new.file.name.sort  [k4:代表第四列alignment length]  

最后欢迎联系我互相交流,我也是学习。[email protected]

你可能感兴趣的:(linux服务器上的blast比对(my version:ncbi-blast-2.8.1+))