SRA原始数据下载-aspera-ascp命令Mortix

2023-10-12 03:30

本文主要是介绍SRA原始数据下载-aspera-ascp命令Mortix,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、前置环境

win11子系统Ubuntu 20.0

安装aspera-cli (aspera的升级版)

conda install -c hcc aspera-cli

安装后需要找到asperaweb_id_dsa.openssh

 /home/yang/miniconda3/pkgs/aspera-cli-3.9.6-h5e1937b_0/etc/asperaweb_id_dsa.openssh

二、数据下载

2.1 利用ascp下载

下载SRR_list

NCBI-All Databases 输入PRJN或SRP或SRR号

如人SRP048601

点击SRA

 点击 Send results to Run selector

 勾选需要的个体或全选,然后点击Accession List,其中Metadata下载的是完整信息列表

SRR+6位、7位或8位数均可用以下代码

ascp下载代码

echo SRA_datadown
openssh=/home/yang/asperaweb_id_dsa.openssh
cat SRR_list |while read id
donum=`echo $id | wc -m `if [ $num -eq 12 ]then	dateecho "SRR + 8"x=$(echo $id | cut -b 1-6)y=$(echo $id | cut -b 10-11)echo "Downloading $id "(ascp -QT -l 300m -P 33001 -k 1 -i $openssh era-fasp@fasp.sra.ebi.ac.uk:vol1/fastq/$x/0$y/$id/   ./)elif  [ $num -eq 11 ]then	dateecho  "SRR + 7"x=$(echo $id | cut -b 1-6)y=$(echo $id | cut -b 10-10)echo "Downloading $id "( ascp  -QT -l 500m -P33001  -k 1 -i $openssh  era-fasp@fasp.sra.ebi.ac.uk:vol1/fastq/$x/00$y/$id/   ./)elif [ $num -eq 10 ]thendateecho  "SRR + 6"x=$(echo $id |cut -b 1-6)echo "Downloading $id "( ascp  -QT -l 500m -P33001 -k 1 -i  $openssh era-fasp@fasp.sra.ebi.ac.uk:vol1/fastq/$x/$id/   ./ )fi
done

注意:SRR_list行尾应有$

具体可用cat -E file查看

有^M的可通过dos2unix file 去除

此外,由于ascp部分数据下载不全,需设定定时重启该脚本以确定每一个数据的完整性(断点续传

-k 1)

2.2 Mortix

ascp有时因服务器维护不可用,直接使用Mortix下载ftp,容易中断需手动恢复,或者使用Linux的wget 断点下载

先在ENA 中搜索PRJN或SRP或SRR

右击获取连接

或者直接利用代码批量生成ftp链接

echo SRA_datadown
openssh=/home/yang/asperaweb_id_dsa.openssh
cat SRR_list |while read id
donum=`echo $id | wc -m `if [ $num -eq 12 ]then	dateecho "SRR + 8"x=$(echo $id | cut -b 1-6)y=$(echo $id | cut -b 10-11)echo "Downloading $id "echo ftp://ftp.sra.ebi.ac.uk/vol1/fastq/$x/0$y/$id/{id}_1.fastq.gzecho ftp://ftp.sra.ebi.ac.uk/vol1/fastq/$x/0$y/$id/{id}_2.fastq.gzelif  [ $num -eq 11 ]then	dateecho  "SRR + 7"x=$(echo $id | cut -b 1-6)y=$(echo $id | cut -b 10-10)echo "Downloading $id "echo ftp://ftp.sra.ebi.ac.uk/vol1/fastq/$x/00$y/$id/{id}_1.fastq.gzecho ftp://ftp.sra.ebi.ac.uk/vol1/fastq/$x/00$y/$id/{id}_2.fastq.gzelif [ $num -eq 10 ]thendateecho  "SRR + 6"x=$(echo $id |cut -b 1-6)echo "Downloading $id "echo ftp://ftp.sra.ebi.ac.uk/vol1/fastq/$x/$id/{id}_1.fastq.gzecho ftp://ftp.sra.ebi.ac.uk/vol1/fastq/$x/$id/{id}_2.fastq.gzfi
done

 参考

Aspera——利用SRR号批量高效下载FASTQ或SRA数据 - 知乎 (zhihu.com)

在Linux中如何去除文档里^M?_E.die的博客-CSDN博客_文档去除m

这篇关于SRA原始数据下载-aspera-ascp命令Mortix的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/192931

相关文章

Python pip下载包及所有依赖到指定文件夹的步骤说明

《Pythonpip下载包及所有依赖到指定文件夹的步骤说明》为了方便开发和部署,我们常常需要将Python项目所依赖的第三方包导出到本地文件夹中,:本文主要介绍Pythonpip下载包及所有依... 目录步骤说明命令格式示例参数说明离线安装方法注意事项总结要使用pip下载包及其所有依赖到指定文件夹,请按照以

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

Java -jar命令如何运行外部依赖JAR包

《Java-jar命令如何运行外部依赖JAR包》在Java应用部署中,java-jar命令是启动可执行JAR包的标准方式,但当应用需要依赖外部JAR文件时,直接使用java-jar会面临类加载困... 目录引言:外部依赖JAR的必要性一、问题本质:类加载机制的限制1. Java -jar的默认行为2. 类加

git stash命令基本用法详解

《gitstash命令基本用法详解》gitstash是Git中一个非常有用的命令,它可以临时保存当前工作区的修改,让你可以切换到其他分支或者处理其他任务,而不需要提交这些还未完成的修改,这篇文章主要... 目录一、基本用法1. 保存当前修改(包括暂存区和工作区的内容)2. 查看保存了哪些 stash3. 恢

java -jar命令运行 jar包时运行外部依赖jar包的场景分析

《java-jar命令运行jar包时运行外部依赖jar包的场景分析》:本文主要介绍java-jar命令运行jar包时运行外部依赖jar包的场景分析,本文给大家介绍的非常详细,对大家的学习或工作... 目录Java -jar命令运行 jar包时如何运行外部依赖jar包场景:解决:方法一、启动参数添加: -Xb

Linux基础命令@grep、wc、管道符的使用详解

《Linux基础命令@grep、wc、管道符的使用详解》:本文主要介绍Linux基础命令@grep、wc、管道符的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录grep概念语法作用演示一演示二演示三,带选项 -nwc概念语法作用wc,不带选项-c,统计字节数-

MySQL的ALTER TABLE命令的使用解读

《MySQL的ALTERTABLE命令的使用解读》:本文主要介绍MySQL的ALTERTABLE命令的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、查看所建表的编China编程码格式2、修改表的编码格式3、修改列队数据类型4、添加列5、修改列的位置5.1、把列

python如何下载网络文件到本地指定文件夹

《python如何下载网络文件到本地指定文件夹》这篇文章主要为大家详细介绍了python如何实现下载网络文件到本地指定文件夹,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下...  在python中下载文件到本地指定文件夹可以通过以下步骤实现,使用requests库处理HTTP请求,并结合o

Linux命令之firewalld的用法

《Linux命令之firewalld的用法》:本文主要介绍Linux命令之firewalld的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux命令之firewalld1、程序包2、启动firewalld3、配置文件4、firewalld规则定义的九大

Linux之计划任务和调度命令at/cron详解

《Linux之计划任务和调度命令at/cron详解》:本文主要介绍Linux之计划任务和调度命令at/cron的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux计划任务和调度命令at/cron一、计划任务二、命令{at}介绍三、命令语法及功能 :at