NCBI作为一个巨大的bioinformatics数据库,除了提供B/S界面的查询外,还提供了许多工具查询和下载DB中的数据。本文介绍其中最强大的一种Entrez Direct(Edirect),这是NCBI官方提供的UNIX平台DB数据检索工具(注意,UNIX平台,不是Linux。我曾经在centos上装过,只能实现输出xml格式结果的功能,不能将结果转换成表格格式,因为perl中xtract模块用不了)。以下是使用方法:
一、环境构建。
1.UNIX和Perl。
要找一台UNIX的机器不容易。个人推荐使用Cygwin提供的WIndows PC版UNIX模拟器来实现。Cygwin的安装和配置可百度,网上很多。需要注意的是1.一定要在安装时选择必要的packages,包括Devel和Perl中所有的包(将这两个Categroy从Default点为Install),这样UNIX模拟器在安装时会自动安装好这些组件。特别是Perl,Edirect是基于Perl语言运行的。还有一点是选择镜像,尽量选择位于大陆的mirror作为安装源。安装完毕后,要将Cgywin的bin文件夹加入到windows环境变量的PATH中。
2. 安装Edirect。
安装Edirect前,首先确保UNIX系统中perl和其组件下载器CPAN都安装好了。在命令行输入perl -v,如无报错,则说明perl安装好了。输入perl -MCPAN -e shell,如果进入了cpan的提示符,则cpan可用,输入exit退出到unix提示符下。
注:我原以为Edirect只能在UNIX系统下安装,最近在CentOS7环境下用官方推荐的安装方法也安装上了Edirect,可能是因为新的环境下安装了Bioperl的Bio::SeqIO模块才成功的,究竟是不是这样希望有兴趣的朋友们仔细研究下。
以下是NCBI官方给出的Edirect安装代码:
cd ~ perl -MNet::FTP -e \ '$ftp = new Net::FTP("ftp.ncbi.nlm.nih.gov", Passive => 1); $ftp->login; $ftp->binary; $ftp->get("/entrez/entrezdirect/edirect.zip");' #通过perl从NCBI的ftp服务器下载edirect.zip文件夹 unzip -u -q edirect.zip rm edirect.zip export PATH=$PATH:$HOME/edirect #将edirect路径加到UNIX环境变量中 ./edirect/setup.sh #执行setup.sh脚本安装Edirect。安装过程中如出现以下提示说明有些perl组件没有装上,不过不要紧,据我观察edirect也能正常用。
永佳@zhanyongjia ~
$ ./edirect/setup.sh
Trying to establish local installations of any missing Perl modules
(as logged in /home/永佳/edirect/setup-deps.log).
Please be patient, as this step may take a little while.
Unable to download a prebuilt xtract executable; attempting to
build one from xtract.go. A Perl fallback is also available, and
will be used if necessary, so please disregard any errors below.
./edirect/setup.sh:行46: go: 未找到命令
ENTREZ DIRECT HAS BEEN SUCCESSFULLY INSTALLED AND CONFIGURED
安装完成后还有一件事,给edirect文件夹下所有目录和文件777权限,chmod -R 777 ./edirect
至此,Edirect安装完成,查阅NCBI提供的教程学习。http://www.ncbi.nlm.nih.gov/books/NBK179288/#chapter6.Release_Notes