GNSS精密轨道产品sp3与精密钟差产品clk批量下载(Linux Shell)

一、精密轨道sp3下载

       目前有众多研究机构提供相关卫星产品,笔者主要选取武汉大学的wum产品与德国GFZ的gbm产品,读者可根据自身需要进行添加其他研究机构。

具体脚本代码如下:

#!/bin/bash
  if [ $# != 4 ]; then                             #判断输入格式是否正确
    echo "Usage: wget_sp3  YYYY DAY ac_name outDir" 
    echo "Usage: wget_sp3 2019 001 WUM /date/gnss/" #注意路径 
    exit
  fi

  yyyy=$1
  day=$2   
  ObsPath=$4
  ddd=`echo ${day} | awk '{printf("%03d",$0)}'`;    #年积日
  yy=`echo ${yyyy} | awk '{printf("%2.2d",$1-int($1/100)*100)}'`;   #年份
  weekd=`mjday $day $yyyy | awk '{nwk=int(($1-44244)/7);nwkd=$1-44244-nwk*7;print nwk*10+nwkd}'`    #20342
  week=`echo $weekd | awk '{print substr($1,1,4)}'`

  #数据下载的研究机构,也可根据需要进行添加
  URL_WUM="ftp://igs.gnsswhu.cn/pub/gnss/products/mgex/${week}/"  
  URL_GBM="ftp://ftp.gfz-potsdam.de/GNSS/products/mgex/${week}/"

  ac_name=$3                                   #大写
  ac_name0=`echo ${ac_name} | tr 'A-Z' 'a-z'`  #小写
  case $ac_name in
	'WUM' )
	RINEX3L="${ac_name}0MGXFIN_${yyyy}${ddd}*ORB.SP3.gz"
	;;
	'GBM' )
	RINEX3L="${ac_name}0MGXRAP_${yyyy}${ddd}*ORB.SP3.gz"
	;;
	* )
	echo 'Unknown AC neme'
	exit
	;;
  esac	
   

  #Check the file existence        #判断o文件是否存在
  if [ -f ${ObsPath}${ac_name0}${weekd}.sp3 ] ; then	
      echo "Obsfile : ${ObsPath}${ac_name0}${weekd}.sp3  exist"
      exit
  fi

  # Download the RINEX 3.X format  
  if [ ! -f ${ObsPath}${RINEX3L} ]; then
	  case $ac_name in
	  'WUM' )
     		wget -t 10  -T 120 -q ${URL_WUM}${RINEX3L} -P ${ObsPath}
	   ;;  
	  'GBM' )
            wget -t 10  -T 120 -q ${URL_GBM}${RINEX3L} -P ${ObsPath}
	   ;;
	   * )
	      echo 'Unknown AC neme'
	      exit
	   ;;
        esac	 
   fi
  
  # Rename the 3.X observations
  if [ -f ${ObsPath}${RINEX3L} ]; then	 
      gzip  -d ${ObsPath}${ac_name}0MGX*${yyyy}${ddd}*ORB.SP3.gz
      file=`ls ${ObsPath}${ac_name}0MGX*${yyyy}${ddd}*ORB.SP3`
      mv ${file} ${ObsPath}${ac_name0}${weekd}.sp3
  fi
   
  # If the 3.x file donoe exit, download the 2.x file
  if [ -f ${ObsPath}${ac_name0}${weekd}.sp3 ] ; then
	  echo "Download completed: ${ObsPath}${ac_name0}${weekd}.sp3"
  else
	  echo "***WARNING***:Download failed: ${ObsPath}${ac_name0}${weekd}.sp3"
  fi

运行代码为:

wget_sp3  2021 001 GBM /home/zh/gnss/

wget_sp3为脚本名  2021为年份,001为年积日,产品名称为GBM,输出路径为/home/zh/gnss/

成功下载后会有如下提示:

Download completed: /home/zh/gnss/gbm21385.sp3

二、精密钟差clk下载

      与前面精密轨道文件相同,只选取武汉大学的wum产品与德国GFZ的gbm产品进行展示。

具体代码如下:

#!/bin/bash

  if [ $# != 4 ]; then                             #判断输入格式是否正确
    echo "Usage: wget_clk  YYYY DAY ac_name outDir" 
    echo "Usage: wget_clk  2019 001 WUM /date/gnss/" #注意路径 
    exit
  fi

  yyyy=$1
  day=$2   
  ObsPath=$4
  ddd=`echo ${day} | awk '{printf("%03d",$0)}'`;    #年积日
  yy=`echo ${yyyy} | awk '{printf("%2.2d",$1-int($1/100)*100)}'`;   #年份
  weekd=`mjday $day $yyyy | awk '{nwk=int(($1-44244)/7);nwkd=$1-44244-nwk*7;print nwk*10+nwkd}'`    #20342
  week=`echo $weekd | awk '{print substr($1,1,4)}'`
  #下载数据来源,可根据需求添加
  URL_WUM="ftp://igs.gnsswhu.cn/pub/gnss/products/mgex/${week}/"  
  URL_GBM="ftp://ftp.gfz-potsdam.de/GNSS/products/mgex/${week}/"

  ac_name=$3                                   #大写
  ac_name0=`echo ${ac_name} | tr 'A-Z' 'a-z'`  #小写
  case $ac_name in
	'WUM' )
	RINEX3L="${ac_name}0MGXFIN_${yyyy}${ddd}*30S_CLK.CLK.gz"
	;;
	'GBM' )
	RINEX3L="${ac_name}0MGXRAP_${yyyy}${ddd}*30S_CLK.CLK.gz"
	;;
	* )
	echo 'Unknown AC neme'
	exit
	;;
  esac	
   

  #Check the file existence        #判断o文件是否存在
  if [ -f ${ObsPath}${ac_name0}${yyyy}${day}.clk ] ; then	
      echo "Obsfile : ${ObsPath}${ac_name0}${yyyy}${day}.clk  exist"
      exit
  fi

  # Download the RINEX 3.X format  
  if [ ! -f ${ObsPath}${RINEX3L} ]; then
	  case $ac_name in
	  'WUM' )
     		wget -t 10  -T 120 -q ${URL_WUM}${RINEX3L} -P ${ObsPath}
	   ;;  
	  'GBM' )
            wget -t 10  -T 120 -q ${URL_GBM}${RINEX3L} -P ${ObsPath}
	   ;;
	   * )
	      echo 'Unknown AC neme'
	      exit
	   ;;
        esac	 
   fi
  
  # Rename the 3.X observations
  if [ -f ${ObsPath}${RINEX3L} ]; then	 
      gzip  -d ${ObsPath}${ac_name}0MGX*${yyyy}${ddd}*CLK.CLK.gz
      file=`ls ${ObsPath}${ac_name}0MGX*${yyyy}${ddd}*CLK.CLK`
      mv ${file} ${ObsPath}${ac_name0}${yyyy}${day}.clk
  fi
   
  # If the 3.x file donoe exit, download the 2.x file
  if [ -f ${ObsPath}${ac_name0}${yyyy}${day}.clk ] ; then
	  echo "Download completed: ${ObsPath}${ac_name0}${yyyy}${day}.clk"
  else
	  echo "***WARNING***:Download failed: ${ObsPath}${ac_name0}${yyyy}${day}.clk"
  fi

运行代码为:

wget_clk   2021 001 WUM /home/zh/gnss/

wget_clk为脚本名  2021为年份,001为年积日,产品名称为WUM,输出路径为/home/zh/gnss/

成功下载后会有如下提示:

Download completed: /home/zh/gnss/wum2021001.clk

以上就是精密产品下载的所有类容,欢迎指正交流。

  • 0
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值