Wget仅下载文件夹结构未获取.nc文件,求解决方案
解决Wget未下载.nc文件的问题及替代工具
修正Wget命令
你之前的命令问题出在-A *的过滤规则(通配符使用不当,且未精准匹配目标文件),加上缺少限制父目录的参数。试试这个调整后的命令:
wget -r -l inf --no-parent -A .nc -pk -e robots=off https://data.seaice.uni-bremen.de/MultiYearIce/ascat-amsr2/final/Antarctic/netcdf/2021/ -P /scratch/robbie/mels_ice_type
参数说明:
-r:开启递归下载(-m已包含此参数,显式写出更清晰)-l inf:允许无限递归深度,确保子目录中的.nc文件也能被抓取--no-parent:禁止Wget爬取父目录内容,避免下载无关文件-A .nc:精准过滤仅下载后缀为.nc的文件- 保留你原有的
-pk(转换链接并下载页面依赖)和-e robots=off(绕过robots.txt限制)
替代工具方案
如果Wget依然无法正常工作,可以尝试以下工具:
1. curl + xargs
先抓取页面中所有.nc文件的链接,再批量下载:
# 提取所有.nc文件的链接并保存到文本文件 curl -s https://data.seaice.uni-bremen.de/MultiYearIce/ascat-amsr2/final/Antarctic/netcdf/2021/ | grep -o 'https://[^"]*\.nc' > nc_links.txt # 批量下载链接中的文件到指定目录 xargs -n 1 curl -O --output-dir /scratch/robbie/mels_ice_type < nc_links.txt
2. aria2c(多线程下载,效率更高)
先安装aria2c(如apt install aria2或yum install aria2),然后使用递归下载:
aria2c -r -l inf -A .nc https://data.seaice.uni-bremen.de/MultiYearIce/ascat-amsr2/final/Antarctic/netcdf/2021/ -d /scratch/robbie/mels_ice_type
或者用上面生成的nc_links.txt批量下载:
aria2c -i nc_links.txt -d /scratch/robbie/mels_ice_type
内容的提问来源于stack exchange,提问作者Robbie Mallett
相关产品推荐
相关产品推荐

