source: trunk/src/get_rama_netcdf.sh @ 103

Last change on this file since 103 was 97, checked in by pinsard, 13 years ago

suppress blank lines trailing blank

File size: 5.7 KB
RevLine 
[4]1#! /bin/sh
2#+
3#
4# .. program:: get_rama_netcdf.sh
5#
6# .. _get_rama_netcdf.sh:
7#
[97]8# ==================
9# get_rama_netcdf.sh
10# ==================
[4]11#
12# SYNOPSIS
13# ========
14#
15# ::
16#
17#  $ get_rama_netcdf.sh
18#
19# DESCRIPTION
20# ===========
21#
22# ``get_rama_netcdf.sh`` get RAMA reference files
23#
[48]24# bf
25#   buoyancy flux
26# d
27#   sigma-theta
28# dyn
29#   dynamic height
30# emp
31#   e-p
32# iso
33#   20C depth
34# met
35#   wind (u,v,speed,direction),  airT, hum rel, SST   (= w + airt + rh)
36# pos
37#   lon, lat
38# rad
39#   shortwave down
40# rf
41#   rain heat flux
42# w
43#   wind
44#
[50]45# Log file is written on :file:`${PROJECT_LOG}/get_rama_netcdf.log.{YYYYMMDDTHHMMSSZ}`
[48]46#
47#     .. graphviz::
48#
49#        digraph get_rama_netcdf {
50#
51#           rama_ref [shape=diamond,fontname=Courier,label="ftp://ftp.pmel.noaa.gov/cdf/sites/daily/*_*_dy.cdf"];
52#
[50]53#           file_rama  [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/*_*_dy.cdf"];
[48]54#
55#           get_rama_netcdf [shape=box,
56#           fontname=Courier,
57#           color=blue,
58#           URL="http://forge.ipsl.jussieu.fr/tropflux/browser/trunk/src/get_rama_netcdf.sh"
[50]59#           label="${PROJECT}/src/get_rama_netcdf.sh"];
[48]60#
61#           {rama_ref} -> {get_rama_netcdf} -> {file_rama}
62#
63#          }
64#
65# EXAMPLES
66# ========
67#
68# You don't have any RAMA reference data, you just have to run this tool ::
69#
70#  $ get_rama_netcdf.sh
71#
72# And look at log file with ::
73#
74#  $ tlogd.sh get_rama_netcdf
75#
[50]76# and of course on files in ${PROJECT_ID}.
[48]77#
[4]78# SEE ALSO
79# ========
80#
81# :ref:`guide data RAMA <data_in_rama>`
82#
[50]83# :ref:`project_profile.sh`
[48]84#
[4]85# TODO
86# ====
87#
[48]88# list of variables and sites in DESCRIPTION
[4]89#
[48]90# do we really need all these variables and sites
[4]91#
[48]92# Liste complète de RAMA::
[4]93#
[48]94#  sitelist="                   16s55e    12s55e    8s55e    4s55e    1.5s55e    0n55e    1.5n55e    4n55e"
95#  sitelist="${sitelist}                                                                               15n65e"
96#  sitelist="${sitelist}                    12s67e     8s67e    4s67e    1.5s67e    0n67e     1.5n67e    4n67e    8n67e"
97#  sitelist="${sitelist}  16s80.5e 12s80.5e 8s80.5e 4s80.5e 1.5s80.5e 0n80.5e 1.5n80.5e 4n80.5e"
98#  sitelist="${sitelist}               1.5s90e 0n90e 1.5n90e 4n90e 8n90e 12n90e 15n90e
99#  sitelist="${sitelist}  16s95e 12s95e 8s95e  5s95e"
100#
101# study wget status (no exit now on non null wget status)
102#
[4]103# EVOLUTIONS
104# ==========
105#
[48]106# $Id$
107#
108# - fplod 20110421T133632Z aedon.locean-ipsl.upmc.fr (Darwin)
109#
110#   * consolidation
111#
[4]112# - fplod 20101213T160928Z aedon.locean-ipsl.upmc.fr (Darwin)
113#
114#   * minimal header
115#
116# - jv 2008
117#
118#   * creation
119#
120#-
[48]121system=$(uname)
122case "${system}" in
123   AIX|IRIX64)
124      echo "www : no specific posix checking"
125   ;;
126   *)
127     set -o posix
128   ;;
129esac
130unset system
131#
132LANG=POSIX
133#
134command=$(basename ${0})
135log_date=$(date -u +"%Y%m%dT%H%M%SZ")
136#
137usage=" Usage : ${command}"
138#
139hostname=$(hostname)
140#
141# default
142# N.A. because no parameters
143#
144set -u
145#
146# test if wget available
147tool=wget
148type ${tool} 1> /dev/null 2>&1
149status=${?}
150if [ ${status} -ne 0 ]
151then
152   echo "${command} : eee : tool ${tool} not found"
153   exit 1
154fi
155unset status
156unset tool
157#
[50]158# check for ${PROJECT_LOG} definition
159if [ "${PROJECT_LOG}" = "" ]
[48]160then
[50]161   echo "${command} : eee : \${PROJECT_LOG} not defined"
[48]162   exit 1
163fi
164#
[50]165# check for ${PROJECT_LOG} existence
166if [ ! -d ${PROJECT_LOG} ]
[48]167then
[50]168   echo "${command} : eee : ${PROJECT_LOG} not found"
[48]169   exit 1
170fi
171#
[50]172# check for permission access on PROJECT_LOG
173if [ ! -x ${PROJECT_LOG} ]
[48]174then
[50]175   echo "${command} : eee : ${PROJECT_LOG} not reachable"
[48]176   exit 1
177fi
178#
[50]179# check for write permission on PROJECT_LOG
180if [ ! -w ${PROJECT_LOG} ]
[48]181then
[50]182   echo "${command} : eee : ${PROJECT_LOG} not writable"
[48]183   exit 1
184fi
185#
[50]186log=${PROJECT_LOG}/$(basename ${0} .sh).log.${log_date}
[48]187echo "[Context]" 1>> ${log}
188echo "command=$(basename ${0})" 1>>${log}
189echo "hostname=${hostname}" 1>> ${log}
190echo "runtime=${log_date}" 1>> ${log}
191unset log_date
192echo "" 1>> ${log}
193#
[3]194varlist="adcp airt bf bp cur d dyn emp evap heat iso lw lwnet met pos qlat qnet qsen rad rain rf rh s ssd sss sst swnet t tau w"
[48]195#
[3]196sitelist="12s55e 8s55e 8s67e 8s80.5e 4s80.5e 1.5s80.5e 0n80.5e 1.5n80.5e 1.5s90e 0n90e 1.5n90e 4n90e 8n90e 12n90e 15n90e 5s95e"
197
198#
199#Liste complète de RAMA:
200#sitelist="                   16s55e    12s55e    8s55e    4s55e    1.5s55e    0n55e    1.5n55e    4n55e"
[48]201#sitelist="${sitelist}                                                                               15n65e"
202#sitelist="${sitelist}                    12s67e     8s67e    4s67e    1.5s67e    0n67e     1.5n67e    4n67e    8n67e"
203#sitelist="${sitelist}  16s80.5e 12s80.5e 8s80.5e 4s80.5e 1.5s80.5e 0n80.5e 1.5n80.5e 4n80.5e"
204#sitelist="${sitelist}               1.5s90e 0n90e 1.5n90e 4n90e 8n90e 12n90e 15n90e
205#sitelist="${sitelist}  16s95e 12s95e 8s95e  5s95e"
[3]206#
[48]207#
208locref="ftp://ftp.pmel.noaa.gov/cdf/sites/daily"
209#
210list_url=""
211#
212# build URL = f(site,var)
213for site in ${sitelist}
214do
215   for var in ${varlist}
216   do
217       list_url="${list_url} ${locref}/${var}${site}_dy.cdf"
218   done
219done
220unset site
221unset var
222unset varlist
223unset sitelist
224unset locref
225#
[50]226# if file is not already in ${PROJECT_ID}, get it
[48]227for url in ${list_url}
228do
[50]229  file=${PROJECT_ID}/$(basename ${url})
[48]230  if [ ! -f ${file} ]
231  then
[50]232     wget --tries=1 --no-verbose -P ${PROJECT_ID} \
[48]233        --user=taopmelftp \
234        --password=G10b@LCh@Ng3 \
235        ${url} >> ${log} 2>&1
236     wget_status=${?}
237     if [ ${wget_status} -ne 0 ]
238     then
239        echo "${command} : eee : ${url} not found" >> ${log} 2>&1
240        # ++ exit 1
241     else
242        echo "${command} : iii : ${url} found" >> ${log} 2>&1
243     fi
244     unset wget_status
245  else
246     echo "iii : ${file} exists" >> ${log}
247  fi
248done
249unset file
250unset url
251unset list_url
252#
253unset command
254unset log
255unset hostname
256unset usage
257#
258# end
259set
260exit 0
Note: See TracBrowser for help on using the repository browser.