生物信息-005-安装和使用SRA toolkit

进入软件安装目录

cd ~/local/app/

下载 SRA toolkit (确保你的下载链接对应的软件版本是跟你的系统一致的)

curl -O https://ftp-trace.ncbi.nlm.nih.gov/sra/sdk/2.8.2/sratoolkit.2.8.2-centos_linux64.tar.gz

解压

tar xzvf sratoolkit.2.8.2-centos_linux64.tar.gz

转到这个目录下,并查看里面的文件

cd sratoolkit.2.8.2-centos_linux64
ll

程序都在这个bin目录下

cd bin
ll

配置环境变量

echo "export PATH=\$PATH:\$HOME/local/app/sratoolkit.2.8.2-centos_linux64/bin" >> ~/.bashrc
source ~/.bashrc

转到 lecture 文件夹下

mkdir -p ~/edu/lec4
cd ~/edu/lec4

命令prefetch 可以从远程站点下载文件

prefetch -h

Usage:
  prefetch [options] <SRA accession | kart file> [...]
  Download SRA or dbGaP files and their dependencies
  prefetch [options] <SRA file> [...]
  Check SRA file for missed dependencies and download them
  prefetch --list <kart file> [...]
  List the content of a kart file
...............................................................

来获取文件

prefetch SRR1553610

这些文件去哪里了?存在了你home目录下的一个默认文件夹里

ls ~/ncbi

里面添加了什么?可以用工具find来查看

find ~/ncbi
/home/sunchengquan/ncbi
/home/sunchengquan/ncbi/public
/home/sunchengquan/ncbi/public/sra
/home/sunchengquan/ncbi/public/sra/SRR1553610.sra

我们用程序fastq-dump来把文件拆包

fastq-dump -h
从NCBI下下来的数据,双端测序数据是放在一个文件里的,所以需要把它们重新拆解为两个文件

拆包文件

cd ncbi/public/sra/
fastq-dump --split-files SRR1553610
FASTQ格式的原始数据文件已经在当前文件夹了

shell下的模式匹配。* (星号)表示可以匹配任何东西

wc -l *.fastq

   879348 SRR1553610_1.fastq
   879348 SRR1553610_2.fastq
  1758696 总用量

查看文件

head SRR1553610_1.fastq
cat *.fastq | grep @SRR | wc -l

如何下载多个文件

echo SRR1553607 > sra.ids
echo SRR1553605 >> sra.ids

prefetch --option-file sra.ids

拆包下载好的所有文件

fastq-dump --split-files ~/ncbi/public/sra/SRR155360*

or
cat sra.ids | sed 's/SRR/fastq-dump --split-files SRR/'

我们还要做的更好。 为什么要去一一复制这些SRR ID ?我们其实可以完全通过命令行来获取它们

esearch -db sra -query PRJNA257197  | efetch -format runinfo

这个命令是把所有的结果放到一个文件里

esearch -db sra -query PRJNA257197  | efetch -format runinfo > runinfo.txt
cat runinfo.txt|wc -l
927
cat runinfo.txt|grep SRR|wc -l
891

并且,由于这是一个逗号分隔符的文件,我们需要把分隔符(用以区别不同列的符号)指明给cut程序

cat runinfo.txt | cut -f 1 -d ","

在我给出的网页版的截图里,你也可以看到,最终结果确实是891个,跟命令行获取的是一样的

这里写图片描述

检查一下下载结果的总大小

du -hs ~/ncbi

例如查询当前用户目录下的所占用的空间
du -hs * 
4.0K    blast.sh
2.8G    Cosmic_grep
2.5G    data
16M    edu
5.6M    features.gff
11M    GAS_match
67M    illumina-data.fq
23M    illumina-data.fq.gz
95M    input
4.8M    lec7.tar.gz
1.4G    local
4.0K    match.gff
42M    mydata.tar.gz
790M    ncbi
................................................
对于du命令,-h表示 查看以M 为单位显示文件大小结果,-s 统计此目录中所有文件大小总和

在NCBI 网站上的手动操作,获取一个project里的所有SRR ID

首先进入https://www.ncbi.nlm.nih.gov/sra/
输入你要找的这个编号:PRJNA257197
这里写图片描述
点击search
会看到很多检索结果
这里写图片描述
点击右上角的send to
这里写图片描述
选定File,并把Format改为RunInfo
点击Create File就生成了一个SraRunInfo.csv文件了
有没有发现,你其实只是把这种网页版的操作变成了几乎一一对应的命令行操作而已

猜你喜欢

转载自blog.csdn.net/sunchengquan/article/details/79781366