wget小细节(geo数据 ,figshare数据)

2023-03-01 15:13:10 浏览数 (2)

前面在学徒抽丝剥茧想搞清楚这个转录组数据问题出在哪里提到了(CNGBdb)数据下载问题,有小伙伴表示wget讲解的不过瘾,所以我们增加了一点内容,主要是关于GEO数据库以及figshare上面的单细胞表达量矩阵的下载。。。

数据在CNGBdb,https://db.cngb.org/search/project/CNP0002454/

查了一下批量下载的教程,发现一般是用Aspera下载

Aspera批量下载:http://www.bio-info-trainee.com/8587.html

但是需要自己手动制作new_fq.txt文件,也就是把下载链接一条条复制粘贴进去。

看了一下本文的样本有34个,每个样本双端测序,也就是要复制粘贴68次,还是有点繁琐了。

本来尝试了另一种傻瓜式的下载方法:

  • 下载Xftp或FileZilla
  • 进入ftp://ftp.cngb.org,匿名登录
  • 通过文件夹路径找到项目文件夹:/pub/CNSA/data4/CNP0002454
  • 把整个CNP0002454文件夹拖进服务器目标路径即可

下载到一半连接断开了……

缺点:下载速度大概3M/s,有点慢,网容易断。

最后,我是用以下方法下载的:

只需要知道项目编号,找到ftp路径:ftp://ftp.cngb.org/pub/CNSA/data4/CNP0002454

然后通过wget命令递归下载,速度20M/s,很快:

代码语言:javascript复制
wget -r -nH -nd -P ./ ftp://ftp.cngb.org/pub/CNSA/data4/CNP0002454 --ftp-user=anonymous --ftp-password=anonymous@example.com
# -r :递归下载
# -nH:不创建主机目录
# -nd:不创建目录
# -P:将文件保存到目录

这样可以把所有文件都下载在一个文件夹里。

注意:一定要加-nd参数!否则会得到一个超级无敌长的文件夹套娃!


geo数据,注意观察规律,比如;GSE136831

如果是在浏览器下载,文件很大,很容易断线,没办法断点续传,而且浏览器通常是下载到个人电脑,但是我们处理单细胞一般来说都是在服务器,还得从个人电脑上次到服务器。。。。

所以可以看到我8年前的教程,推文在:

  • 解读GEO数据存放规律及下载,一文就够
  • 解读SRA数据库规律一文就够
  • 从GEO数据库下载得到表达矩阵 一文就够

遇到了单细胞表达量矩阵在GEO数据库,就可以使用下面的命令:

代码语言:javascript复制
nohup wget -c -r -np -nH --cut-dirs=3 ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE136nnn/GSE136831/suppl/ &
find ./ -name "*gz"|xargs -I {} gunzip {}

#
https://www.jianshu.com/p/80edcabd7f2a
cat temp1 | perl -ne 'print "https://zenodo.org/record/400950/files/$_";' > download.txt
wget -i download.txt


nohup wget -c ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE136nnn/GSE136831/suppl/GSE136831_RawCounts_Sparse.mtx.gz &
nohup wget -c ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE136nnn/GSE136831/suppl/GSE136831_AllCells.cellBarcodes.txt.gz &
nohup wget -c ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE136nnn/GSE136831/suppl/GSE136831_AllCells.Samples.CellType.MetadataTable.txt.gz   &
nohup wget -c ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE136nnn/GSE136831/suppl/GSE136831_AllCells.GeneIDs.txt.gz &

如果是下载figshare数据,需要安装

代码语言:javascript复制
sudo apt-get install awscli

然后再下载,比如下面的(https://figshare.com/ndownloader/files/30835246 ),如果是在浏览器下载 :

代码语言:javascript复制

#https://blog.csdn.net/xiliunian/article/details/104313511
nohup wget -c --no-check-certificate --no-proxy https://figshare.com/ndownloader/files/30835246 &
nohup wget -c https://s3-eu-west-1.amazonaws.com/pfigshare-u-files/30835246/ILD_alldataset_population_noSCT.rds?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIYCQYOYV5JSSROOA/20230224/eu-west-1/s3/aws4_request&X-Amz-Date=20230224T170124Z&X-Amz-Expires=10&X-Amz-SignedHeaders=host&X-Amz-Signature=102fc7fe3c73fd86b3b7458a0585acd79611095e5cba52b2903044c2ba341c26 &

nohup wget -c --no-check-certificate --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3" https://figshare.com/ndownloader/files/30835246  &

nohup wget -c --no-check-certificate --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3" https://figshare.com/ndownloader/files/30836776  &

nohup curl https://s3-eu-west-1.amazonaws.com/pfigshare-u-files/30835246/ILD_alldataset_population_noSCT.rds?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIYCQYOYV5JSSROOA/20230224/eu-west-1/s3/aws4_request&X-Amz-Date=20230224T170124Z&X-Amz-Expires=10&X-Amz-SignedHeaders=host&X-Amz-Signature=102fc7fe3c73fd86b3b7458a0585acd79611095e5cba52b2903044c2ba341c26 &
nohup curl -C https://s3-eu-west-1.amazonaws.com/pfigshare-u-files/30835246/ILD_alldataset_population_noSCT.rds?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIYCQYOYV5JSSROOA/20230224/eu-west-1/s3/aws4_request&X-Amz-Date=20230224T170820Z&X-Amz-Expires=10&X-Amz-SignedHeaders=host&X-Amz-Signature=f786583613c9276e963a35e3bdc59c013c8a25b62755a122079467dac31498c8 &

nohup curl -C  https://s3-eu-west-1.amazonaws.com/pfigshare-u-files/30835246/ILD_alldataset_population_noSCT.rds?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIYCQYOYV5JSSROOA/20230224/eu-west-1/s3/aws4_request&X-Amz-Date=20230224T184948Z&X-Amz-Expires=10&X-Amz-SignedHeaders=host&X-Amz-Signature=642c27ba7ad0b2c062746bf4179deb8799236d3e694b184195120c937d4f7def             &

wget 使用注意点,详细说说每个参数的含义,用法,并举例

代码语言:javascript复制

-r, --recursive
这个选项用于递归地下载整个网站或目录。例如:','wget -r http://www.example.com/
这个命令将下载 www.example.com 网站的所有内容,包括子目录和链接。
-nH, --no-host-directories
这个选项用于在下载时不创建目标文件夹的主机名目录。例如:
wget -nH http://www.example.com/files/file.txt
这个命令将在当前目录下创建一个名为 file.txt 的文件,而不是在 www.example.com/files/ 目录下创建。
-N, --timestamping
这个选项用于只下载更新过的文件。例如:
wget -N http://www.example.com/files/file.txt
如果 file.txt 本地已经存在并且与远程文件的时间戳相同,那么 wget 将不会下载文件。如果本地文件的时间戳比远程文件的时间戳早,那么 wget 将下载文件。
-nd, --no-directories
这个选项用于在下载时不创建目标文件夹。例如:
wget -nd http://www.example.com/files/file.txt
这个命令将在当前目录下创建一个名为 file.txt 的文件,而不是在 www.example.com/files/ 目录下创建。
-P, --directory-prefix
这个选项用于指定要将文件下载到的目录。例如:
wget -P /home/user/downloads/ http://www.example.com/files/file.txt
这个命令将在 /home/user/downloads/ 目录下创建一个名为 file.txt 的文件。
-c, --continue
这个选项用于在中断的地方继续下载文件。例如:

wget -c http://www.example.com/files/file.txt
如果文件下载已经开始,但由于某种原因中断了,那么 wget 将在中断的地方继续下载文件。
-O, --output-document
这个选项用于将下载的文件保存为指定的文件名。例如:
wget -O newfile.txt http://www.example.com/files/file.txt
这个命令将下载文件 file.txt 并将其保存为名为 newfile.txt 的文件。
-q, --quiet
这个选项用于静默下载,不输出下载进度信息。例如:
wget -q http://www.example.com/files/file.txt
这个命令将在后台下载文件 file.txt。
-t, --tries
这个选项用于指定在下载过程中尝试重新连接的次数。例如:
wget -t 5 http://www.example.com/files/file.txt
这个命令将在下载过程中尝试重新连接 5 次。
-b, --background
这个选项用于在后台下载文件。
文末友情宣传

强烈建议你推荐给身边的博士后以及年轻生物学PI,多一点数据认知,让他们的科研上一个台阶:

  • 生物信息学马拉松授课(买一得五) ,你的生物信息学入门课
  • 144线程640Gb内存服务器共享一年仍然是仅需800
  • 千呼万唤始出来的独享生物信息学云服务器

0 人点赞