从NCBI下载:
sra的数据库格式为

/sra/sra-instant/reads/ByRun/sra/{SRR|ERR|DRR}/<first 6 characters of accession>/<accession>/<accession>.sra
for i in `cat accession.txt`;do
x=$(echo $i | cut -b 1-6)
y=$(echo $i | cut -b 1-3)ascp -T -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh -k 1 -T -l200m anonftp@ftp-private.ncbi.nlm.nih.gov:/sra/sra-instant/reads/ByRun/sra/$y/$x/$i/$i.sra .
done

从EBI下载:
EBI的数据格式为

era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/<first 6 characters of accession>/00<the last character of accession>/<accession>/<accession>_{1|2}.fastq.gz
# 对于单端数据
cat  down.txt |while read id;do if [ ${#id} == 9 ] ; #根据accession number的长度下载地址的规律会发生变化
then ascp -QT -l 300m -P33001 -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/${id:0:6}/$id/${id}.fastq.gz ./;
else ascp -QT -l 300m -P33001 -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/${id:0:6}/00${id:0-1}/$id/${id}.fastq.gz ./;
fi;
done# 对于双端数据
cat  down.txt |while read id;do if [ ${#id} == 9 ] ;
then ascp -QT -l 300m -P33001 -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/${id:0:6}/$id/${id}_1.fastq.gz ./;ascp -QT -l 300m -P33001 -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/${id:0:6}/$id/${id}_2.fastq.gz ./;
else ascp -QT -l 300m -P33001 -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/${id:0:6}/00${id:0-1}/$id/${id}_1.fastq.gz ./;ascp -QT -l 300m -P33001 -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/${id:0:6}/00${id:0-1}/$id/${id}_2.fastq.gz ./;
fi;
done

以最常见的PE(双端)为例,下载后文件名会是

<accession>_{1|2}.fastq.gz

从文件名无法看出其样本分类,因此我们需要根据临床信息进行批量重命名。
以GSE149638为例,打开EBI

1、选择show column selection,点击添加sample_title和fastq_aspera

2、点击左上角的download tsv report

3、tsv格式如下

study_accession  sample_accession    experiment_accession    run_accession   tax_id  scientific_name fastq_ftp   fastq_aspera    submitted_ftp   sra_ftpsample_title
PRJNA629498 SAMN14777247    SRX8213570  SRR11652531 9606    Homo sapiens    ftp.sra.ebi.ac.uk:/.../SRR11652531_1.fastq.gz;ftp.sra.ebi.ac.uk/.../SRR11652531_2.fastq.gz  fasp.sra.ebi.ac.uk:/.../SRR11652531_1.fastq.gz;fasp.sra.ebi.ac.uk:/.../SRR11652531_2.fastq.gz   HMDM M0 rep1

我们希望把文件命名为HMDM_M0_rep1_SRR11652531_1.fastq.gz的格式
提取信息:

##具体cut哪几列取决于你下载的文件
grep 'HMDM' filereport_read_tsv.txt | cut -f 4,11 | tr ' ' '_' | awk '{print $2"_"$1}' > new.txt
## 新命名格式为HMDM_M0_rep1_SRR11652531_1.fastq.gz,储存到new.txt中
ls *_1.fastq.gz > old1.txt
ls *_2.fastq.gz > old2.txt
## 旧文件名储存到old1,old2中
(awk '{print$0"_1.fastq.gz"}' new.txt ) > new1.txt
(awk '{print$0"_2.fastq.gz"}' new.txt ) > new2.txt
##给新文件名加上后缀
paste old1.txt new1.txt > sample1.txt
paste old2.txt new2.txt > sample2.txt
##将新旧文件名合并到同一文件中
awk -F'\t' 'system("mv " $1 " " $2)' sample1.txt
awk -F'\t' 'system("mv " $1 " " $2)' sample2.txt
##使用awk的system参数,调用系统函数,mv为重命名,$1代表文本的第一列,也就是旧文件名;$2代表文本的第二列,也就是新文件名了;括号内的"表示concatenation,

参考
使用aspera从EBI下载fastq数据,抛弃NCBI的SRA数据库吧!
Renaming files using list

Aspera/FTP下载SRA/fastq文件后根据样本信息进行批量重命名相关推荐

  1. php文件夹操作:读取文件夹、批量重命名文件

    以读取从网上下载的评书解压后的文件夹为例,并批量重命名 文件夹内容如下,现在使用php读取这个文件夹里面的文件,并批量重命名为"隋唐演义+序号.mp3"的格式: <?php ...

  2. java 批量重命名_Java实现文件批量重命名

    Windows操作系统可以实现重命名文件操作,却不能实现批量重命名.本实例实现了批量重命名功能,可以将一个文件夹内同一类型的文件按照一定的规则批量重命名.用户可以给出重命名模板,程序可以根据模板对相应 ...

  3. R语言——批量重命名文件

    R语言--批量重命名文件 前言 源代码 样例 小结 前言 针对指定文件夹里的文件,并依据参考表批量重命名文件. 提示:以下是本篇文章正文内容,下面案例仅供学习参考 源代码 # 批量重命名文件 # 批量 ...

  4. python下载文件并改名_第46p,8行代码,用Python批量重命名文件

    大家好,我是杨数Tos,这是<从零基础到大神>系列课程的第46篇文章,第二阶段的课程:Python基础知识:小案例之用Python批量重命名文件. 学习本课程,建议先看一遍:[计算机基础知 ...

  5. 深蓝文件批量重命名工具绿色中文便携版V4.0 | 电脑批量重命名软件下载 | 批量重命名软件哪个好

    深蓝文件批量重命名工具顾名思义是一款短小精悍且功能实用又丰富的免费电脑批量重命名软件,支持常规.替换.文件大小写转换.mp3标签添加等诸多功能,具备三种重命名方式,可全面兼容文件名.扩展名以及全部的文 ...

  6. 批量重命名 文件名称命名错误后如何恢复原本名称

    我们在给文件重命名后发现重命名错误,要如何恢复成原本的名称呢?下面分享一个自由切换的重命名方法,一起来看看操作步骤吧! 第一步,运行文件批量改名高手,在文件批量重命名界面,首先"添加文件&q ...

  7. 百度网盘批量重命名文件免费脚本---2020.07

    文章目录 背景 使用工具 使用方法 使用限制 其他替代产品(收费) 1.邓西软件 2.百度网盘批量处理大师 一.批量重命名 二.批量分享 三.批量转存 四.批量离线 五.批量同步 六.批量永存 七.其 ...

  8. 文件批量重命名的技术,你值得拥有

    经验整理 NGS系列文章包括NGS基础.转录组分析 (Nature重磅综述|关于RNA-seq你想知道的全在这).ChIP-seq分析 (ChIP-seq基本分析流程).单细胞测序分析 (重磅综述:三 ...

  9. 有了这些,文件批量重命名还需要求助其它工具吗?

    经验整理 NGS系列文章包括NGS基础.转录组分析 (Nature重磅综述|关于RNA-seq你想知道的全在这).ChIP-seq分析 (ChIP-seq基本分析流程).单细胞测序分析 (重磅综述:三 ...

最新文章

  1. angular5项目端口冲突之解决办法
  2. android自动跑马灯,Android-最强跑马灯
  3. 检查Red Hat JBoss BRMS部署架构的规则和事件(第一部分)
  4. gpt efi win7 linux,科学网—UEFI+GPTSSD+HDD 成功安装win10+Centos linux7 过程 - 陈长云的博文...
  5. PythonEggs
  6. Qtcreator中经常使用快捷键总结
  7. 2021年重庆市高考成绩查询时间复核,2021年重庆高考怎么查询是否被录取,具体录取时间安排...
  8. Linux下使用SSH连接远端服务器技术总结
  9. SaaS 正在 Rails 化
  10. 风一样的坑爹哥rust1_醒醒吧,烂大街的“北欧风”根本不实用!
  11. 2021-03-06JAVA大数据Week1
  12. 字节版 趣味测试小程序源码
  13. 网络基础之冲突域和广播域
  14. HTML5 拖放(Drag 和 Drop)(stage1-39)
  15. 计算机思维测试题,孩子逻辑思维测试题有哪些
  16. 方法区、永久代、元空间的区别
  17. LFS : 制作分区和挂载分区
  18. 百度APP核心技术:Android多子view嵌套最佳通用解决方案
  19. 用python语言写小程序_小程序用什么语言开发?python语言开发可以开发吗?
  20. python完成文件夹批量word转pdf文件及pdf文件合并+word文件合并

热门文章

  1. LINUX开启ssh服务,报错:ssh: connect to host 192.168.0.101 port 22: Connection refused
  2. C语言中的关键字-const、volatile、regist
  3. pyinstall install
  4. 浅析电线电缆出现接触不良的原因
  5. 电脑,win10无法进入休眠模式解决方法 史上最全
  6. 手机快充,是手机数据线的功劳还是充电头的功劳?
  7. 计算机网络的体系结构-各层需要解决的问题
  8. 基础篇(二).ARMv8寄存器(1)
  9. 罗永浩:成都分公司没倒闭 今年是锤子很艰辛的一年
  10. 教孩子有教养,有气质,有风度