自己编写Linux-Shell脚本下载序列数据库_2020-11-17

搞生物的、搞生信的离不开下载基因或蛋白序列,如果你有一个物种、一个基因、一个蛋白、一个RNA还好说,我就点点下载呗,但是如果你要下载的物种、基因或蛋白很多很多,是个长列表,那就不适合一个一个的费力的下载了,这个时候就需要用编程的思想解决问题,让机器不知疲倦的帮我们完成机械式的任务!

下面是一个现实任务:需要下载31个物种的蛋白质组FASTA序列数据库,我们使用Linux shell编程去解决,这个方法和思路可以延伸和扩展,大家根据自己的实际问题进行修改代码,我的代码如下:

#!/usr/bin/bash

for w in $(cat Species_fasta_websites.txt)

do

    echo "当前下载的物种序列数据库网址为:"

    echo

    website=`echo ${w##*:}`

    taxid=`echo ${website%%&*}`

    wget -c -O "Uniprot_taxonomy_$taxid.fasta.gz" $w

    echo

    echo "Species $taxid Seq Database is Download Finished!"

done

上面的代码保存到一个名为:downloader.sh的文件中,然后与这个downloader.sh文件处于同一个文件夹中的一个记录着要下载的所有网址,然后我们使用强大的linux命令去遍历的下载它,当然,你也可以使用R、Python、Perl、Java、Julia、C等等语言去实现这样的功能,不管你用什么语言,我们目的是一样的!

这个文件Species_fasta_websites.txt的内容截屏如下:

猜你喜欢

转载自blog.csdn.net/qq_32391411/article/details/109746894
今日推荐