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

相关文章

前端下载文件时如何后端返回的文件流一些常见方法

《前端下载文件时如何后端返回的文件流一些常见方法》:本文主要介绍前端下载文件时如何后端返回的文件流一些常见方法,包括使用Blob和URL.createObjectURL创建下载链接,以及处理带有C... 目录1. 使用 Blob 和 URL.createObjectURL 创建下载链接例子:使用 Blob

Linux ls命令操作详解

《Linuxls命令操作详解》通过ls命令,我们可以查看指定目录下的文件和子目录,并结合不同的选项获取详细的文件信息,如权限、大小、修改时间等,:本文主要介绍Linuxls命令详解,需要的朋友可... 目录1. 命令简介2. 命令的基本语法和用法2.1 语法格式2.2 使用示例2.2.1 列出当前目录下的文

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

Java实现文件图片的预览和下载功能

《Java实现文件图片的预览和下载功能》这篇文章主要为大家详细介绍了如何使用Java实现文件图片的预览和下载功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... Java实现文件(图片)的预览和下载 @ApiOperation("访问文件") @GetMapping("

Python下载Pandas包的步骤

《Python下载Pandas包的步骤》:本文主要介绍Python下载Pandas包的步骤,在python中安装pandas库,我采取的方法是用PIP的方法在Python目标位置进行安装,本文给大... 目录安装步骤1、首先找到我们安装python的目录2、使用命令行到Python安装目录下3、我们回到Py

Linux find 命令完全指南及核心用法

《Linuxfind命令完全指南及核心用法》find是Linux系统最强大的文件搜索工具,支持嵌套遍历、条件筛选、执行动作,下面给大家介绍Linuxfind命令完全指南,感兴趣的朋友一起看看吧... 目录一、基础搜索模式1. 按文件名搜索(精确/模糊匹配)2. 排除指定目录/文件二、根据文件类型筛选三、时间

使用国内镜像源优化pip install下载的方法步骤

《使用国内镜像源优化pipinstall下载的方法步骤》在Python开发中,pip是一个不可或缺的工具,用于安装和管理Python包,然而,由于默认的PyPI服务器位于国外,国内用户在安装依赖时可... 目录引言1. 为什么需要国内镜像源?2. 常用的国内镜像源3. 临时使用国内镜像源4. 永久配置国内镜

使用mvn deploy命令上传jar包的实现

《使用mvndeploy命令上传jar包的实现》本文介绍了使用mvndeploy:deploy-file命令将本地仓库中的JAR包重新发布到Maven私服,文中通过示例代码介绍的非常详细,对大家的学... 目录一、背景二、环境三、配置nexus上传账号四、执行deploy命令上传包1. 首先需要把本地仓中要

Windows命令之tasklist命令用法详解(Windows查看进程)

《Windows命令之tasklist命令用法详解(Windows查看进程)》tasklist命令显示本地计算机或远程计算机上当前正在运行的进程列表,命令结合筛选器一起使用,可以按照我们的需求进行过滤... 目录命令帮助1、基本使用2、执行原理2.1、tasklist命令无法使用3、筛选器3.1、根据PID

Linux系统之authconfig命令的使用解读

《Linux系统之authconfig命令的使用解读》authconfig是一个用于配置Linux系统身份验证和账户管理设置的命令行工具,主要用于RedHat系列的Linux发行版,它提供了一系列选项... 目录linux authconfig命令的使用基本语法常用选项示例总结Linux authconfi