From 生信技能树 的娟老师
1、从数据库中下载之后通过xftp传递到服务器上。(传递到当前目录,利用pwd命令看当前路径,之后复制到ftp)
$ ll
total 20
drwxrwxr-x 2 Apr7 Apr7 4096 Apr 27 21:58 ./
drwxrwxr-x 3 Apr7 Apr7 4096 Apr 27 21:54 ../
-rw-rw-r-- 1 Apr7 Apr7 8712 Apr 27 21:58 filereport_read_run_PRJNA229998_tsv.txt
2、我们利用asp软件下载,得到asp的下载链接,找到fastq_aspera 所在的列。即第10列。
(rna) Apr7 21:58:52 ~/project/Human-16-Asthma-Trans/data/rawdata
$ head -n 1 filereport_read_run_PRJNA229998_tsv.txt #显示表格的第一行,即表头
study_accession sample_accession experiment_accession run_accession tax_id scientific_name base_count fastq_md5 fastq_ftp fastq_aspera submitted_ftp sra_md5 sra_ftp sra_aspera sample_title
(rna) Apr7 21:59:22 ~/project/Human-16-Asthma-Trans/data/rawdata
$ head -n 1 filereport_read_run_PRJNA229998_tsv.txt | tr '\t' '\n' #把tab分隔符号换成行
study_accession
sample_accession
experiment_accession
run_accession
tax_id
scientific_name
base_count
fastq_md5
fastq_ftp
fastq_aspera
submitted_ftp
sra_md5
sra_ftp
sra_aspera
sample_title
(rna) Apr7 22:06:44 ~/project/Human-16-Asthma-Trans/data/rawdata
$ head -n 1 filereport_read_run_PRJNA229998_tsv.txt | tr '\t' '\n'|cat -n #cat给每一行编号
1 study_accession
2 sample_accession
3 experiment_accession
4 run_accession
5 tax_id
6 scientific_name
7 base_count
8 fastq_md5
9 fastq_ftp
10 fastq_aspera
11 submitted_ftp
12 sra_md5
13 sra_ftp
14 sra_aspera
15 sample_title
(rna) Apr7 22:06:44 ~/project/Human-16-Asthma-Trans/data/rawdata
$ less -S filereport_read_run_PRJNA229998_tsv.txt |cut -f 10 |less -S #看这个表格cut的第10行之后再看
如何弄成一行只有一个完整的下载链接呢?
less -S filereport_read_run_PRJNA229998_tsv.txt |awk -F'\t' 'NR>1 {print}' |less -S #awk 输出第一行,默认分隔符为空格,所以我们指定的分隔符tab键,-F'\t',然后我们发现一行具有多个链接。文件与文件的关系是以分号连接。
less -S filereport_read_run_PRJNA229998_tsv.txt |awk -F'\t' 'NR>1 {print$10}' |less -S |tr ';' '\n' |less -S #取第十行,然后利用tr将;换成换行。
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/008/SRR1039508/SRR1039508_2.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/009/SRR1039509/SRR1039509_1.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/009/SRR1039509/SRR1039509_2.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/000/SRR1039510/SRR1039510_1.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/000/SRR1039510/SRR1039510_2.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/001/SRR1039511/SRR1039511_1.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/001/SRR1039511/SRR1039511_2.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/002/SRR1039512/SRR1039512_1.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/002/SRR1039512/SRR1039512_2.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/003/SRR1039513/SRR1039513.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/003/SRR1039513/SRR1039513_1.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/003/SRR1039513/SRR1039513_2.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/004/SRR1039514/SRR1039514_1.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/004/SRR1039514/SRR1039514_2.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/005/SRR1039515/SRR1039515.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/005/SRR1039515/SRR1039515_1.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/005/SRR1039515/SRR1039515_2.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/006/SRR1039516/SRR1039516.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/006/SRR1039516/SRR1039516_1.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/006/SRR1039516/SRR1039516_2.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/007/SRR1039517/SRR1039517_1.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/007/SRR1039517/SRR1039517_2.fastq.gz
3、需要修改数据。用grep抓取
$ less -S filereport_read_run_PRJNA229998_tsv.txt |awk -F'\t' 'NR>1 {print$10}' |less -S |tr ';' '\n' |grep '_' >fq.url #grep抓取_的数据重新导入(>定向)至fq.url
查看当前目录
$ ll
total 28
drwxrwxr-x 2 Apr7 Apr7 4096 Apr 27 22:55 ./
drwxrwxr-x 3 Apr7 Apr7 4096 Apr 27 21:54 ../
-rw-rw-r-- 1 Apr7 Apr7 8712 Apr 27 21:58 filereport_read_run_PRJNA229998_tsv.txt
-rw-rw-r-- 1 Apr7 Apr7 2400 Apr 27 22:55 fq.url #
-rw-r--r-- 1 Apr7 Apr7 2924 Apr 27 22:12 s -S filereport_read_run_PRJNA229998_tsv.txt
4、只下载三个数据
$ head -n 6 fq.url >tem.url
$ cat tem.url
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/008/SRR1039508/SRR1039508_1.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/008/SRR1039508/SRR1039508_2.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/009/SRR1039509/SRR1039509_1.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/009/SRR1039509/SRR1039509_2.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/000/SRR1039510/SRR1039510_1.fastq.gz
fasp.sra.ebi.ac.uk:/vol1/fastq/SRR103/000/SRR1039510/SRR1039510_2.fastq.gz
5、下载链接
id 表示我们的下载链接
echo打印当前命令。循环命令。do done 代表命令的开始,每一次循环。 -i是密钥 ./ 下载到当前目录。
cat fq.url |while read id
do
echo "ascp -k 1 -QT -l 300m -P33001 -i ~/miniconda3/envs/rna/etc/asperaweb_id_dsa.openssh era-fasp@${id} ./ "
done
#下载命令,输入之后等待。
cat fq.url |while read id
do
ascp -k 1 -QT -l 300m -P33001 -i ~/miniconda3/envs/rna/etc/asperaweb_id_dsa.openssh era-fasp@${id} ./
done