prefetch批量下载SRR文件

数据库下载SRR文件

prefetch -O output --option-file SRR_Acc_List.txt#批量下载
prefetch SRRXXXXXXXX#单独下载一个

把当前文件夹的下一级子文件夹中的sra文件移动到当前文件夹来

find . -mindepth 2 -maxdepth 2 -type f -name "*.sra" -exec mv {} . \;

这条命令的解释如下:

find .:从当前目录开始查找。
-mindepth 2:最小深度为2,意味着它将跳过当前目录(深度1)。
-maxdepth 2:最大深度也为2,这意味着它只会在当前目录的直接子目录中查找。
-type f:只查找文件。
-name "*.sra":查找所有以.sra结尾的文件。
-exec mv {} . ;:对于找到的每个文件,执行mv命令将其移动到当前目录(.表示当前目录)

在运行此命令之前,请确保您在想要操作的目录中,并且理解这个命令会将所有找到的.sra文件移动到当前目录,这可能会覆盖任何同名的现有文件。如果您想先看看哪些文件将被移动,您可以先运行不带-exec mv {} . ;的命令,
find . -mindepth 2 -maxdepth 2 -type f -name "*.sra"

将SRA文件转化为fastq文件

fasterq-dump -S -e 10 *.sra  #-S是--split-files,#-e 10开十线程,#*.sra所有sra文件 --include-technical为单细胞才加
fasterq-dump -S -e 10 SRRXXXXXXX.sra#转化单独一个文件

文件转移和处理

mv *.fastq.gz ./raw_data/  #将fastq.gz文件移动到当前目录的raw_data文件夹
rm  -i *.sra #删除当前文件夹中的sra文件

将fastq文件压缩为fq.gz文件

gzip  *.fastq  #-k 保留原文件,-d是解压,
gzip SRRXXXXXX.fastq#压缩单独一个

ENA下载链接改名

###将wget -nc ftp://ftp.sra.ebi.ac.uk改成fasp.sra.ebi.ac.uk:
sed -i 's/wget -nc ftp:\/\/ftp.sra.ebi.ac.uk/fasp.sra.ebi.ac.uk:/g' your_file.sh

Aspera高速下载(linux)

ascp -QT -l 300m -P33001 -k 1 -i ~/mambaforge-pypy3/envs/download/etc/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/SRR200/083/SRR20045883/SRR20045883_1.fastq.gz .
批量脚本
#!/bin/bash
cat fq.txt |while read id 
do 
ascp -QT -l 300m -P33001 -k 1 -i ~/mambaforge-pypy3/envs/kingfisher/etc/asperaweb_id_dsa.openssh era-fasp@$id .
done

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容