[Dart-dev] [5985] DART/branches/development/models/cam/shell_scripts/st_archive.sh: Short term archiver based on cesm1_1_1 ...
nancy at ucar.edu
nancy at ucar.edu
Tue Mar 5 15:35:49 MST 2013
Revision: 5985
Author: thoar
Date: 2013-03-05 15:35:48 -0700 (Tue, 05 Mar 2013)
Log Message:
-----------
Short term archiver based on cesm1_1_1 ... trivial changes this time.
Instance number fix, full DART support.
Modified Paths:
--------------
DART/branches/development/models/cam/shell_scripts/st_archive.sh
-------------- next part --------------
Modified: DART/branches/development/models/cam/shell_scripts/st_archive.sh
===================================================================
--- DART/branches/development/models/cam/shell_scripts/st_archive.sh 2013-03-05 17:50:17 UTC (rev 5984)
+++ DART/branches/development/models/cam/shell_scripts/st_archive.sh 2013-03-05 22:35:48 UTC (rev 5985)
@@ -3,15 +3,6 @@
#short-term archive script - move model output out of run directory
#to free disc space for next invocation of model run
#must be executed from run directory
-#
-# DART $Id$
-#
-# This must exist as ${CASEROOT}/Tools/st_archive.sh
-# ./xmlchange -file env_run.xml -id DOUT_S_SAVE_INT_REST_FILES -val 'TRUE'
-#
-# The original has been substantially modified to restage the CAM INITIAL files
-# for successive coldstarts - as opposed to restage restart files. As of
-# Nov 10, 2011 ... DART is using CAM initial files. This will change SOON.
#function dispose:
#moves output files to specified area of st archive and will
@@ -46,13 +37,13 @@
#
#result is returned in $inst_suffix
get_inst_suffix() {
-# echo "get_inst_suffixa $1 $2 ${inst_suffix}"
+ echo "get_inst_suffixa $1 $2 ${inst_suffix}"
if [ $2 -eq 1 ]; then # only one instance of this component
inst_suffix=""
else # multiple instances of this component
inst_suffix=`printf _%04d $1`
fi
-# echo "get_inst_suffixb $1 $2 ${inst_suffix}"
+ echo "get_inst_suffixb $1 $2 ${inst_suffix}"
}
echo ""
@@ -115,12 +106,9 @@
fi
#create directory for restart files
-#set ${CASE}.cpl.r.*
-#cplfile=`ls -rt $* 2> /dev/null | tail -1`
-#dname=`echo $cplfile | sed "s/\.nc//; s/^.*\.r\.//;"`
-set Posterior_Diag.*.nc
+set ${CASE}.cpl.r.*
cplfile=`ls -rt $* 2> /dev/null | tail -1`
-dname=`echo "$cplfile" | cut -f2 -d'.'`
+dname=`echo $cplfile | sed "s/\.nc//; s/^.*\.r\.//;"`
if [ -d ${sta}/rest/${dname} ]; then
rm -rf ${sta}/rest/${dname}
fi
@@ -140,16 +128,15 @@
echo "st_archive.sh: exiting"
exit 1
fi
-# TJH mv $* ${sta}/rest/${dname}
+mv $* ${sta}/rest/${dname}
-set rpointer.*; dispose ifiles_n ${sta}/cpl/logs $*
set cpl.log.*; dispose ifiles_n ${sta}/cpl/logs $*
set ccsm*.log.*; dispose ifiles_n ${sta}/cpl/logs $*
-set ${CASE}.cpl.r.*; dispose ifiles_y ${sta}/cpl/rest $*
+set ${CASE}.cpl.r.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/cpl/rest $*
set ${CASE}.cpl.h* ; dispose ifiles_n ${sta}/cpl/hist $*
-#possible tweaking - remove assimilate_dir.* directories? anything else?
+# TJH FIXME possible tweaking - remove assimilate_dir/member_* directories? anything else?
set dart_log.*; dispose ifiles_n ${sta}/dart/logs $*
set True_State.*.nc; dispose ifiles_n ${sta}/dart/hist $*
set Prior_Diag.*.nc; dispose ifiles_n ${sta}/dart/hist $*
@@ -165,30 +152,45 @@
do
get_inst_suffix $IDX $NINST_ATM
set atm${inst_suffix}.log.*; dispose ifiles_n ${sta}/atm/logs $*
- set ${CASE}.cam${inst_suffix}.r.*; dispose ifiles_y ${sta}/atm/rest $*
- set ${CASE}.cam${inst_suffix}.rs.*; dispose ifiles_y ${sta}/atm/rest $*
- set ${CASE}.cam${inst_suffix}.ra.*; dispose ifiles_y ${sta}/atm/rest $*
- set ${CASE}.cam${inst_suffix}.rh0.*; dispose ifiles_y ${sta}/atm/rest $*
- set ${CASE}.cam${inst_suffix}.rh1.*; dispose ifiles_y ${sta}/atm/rest $*
- set ${CASE}.cam${inst_suffix}.rh2.*; dispose ifiles_y ${sta}/atm/rest $*
- set ${CASE}.cam${inst_suffix}.rh3.*; dispose ifiles_y ${sta}/atm/rest $*
- set ${CASE}.cam${inst_suffix}.rh4.*; dispose ifiles_y ${sta}/atm/rest $*
- set ${CASE}.cam${inst_suffix}.rh5.*; dispose ifiles_y ${sta}/atm/rest $*
- set ${CASE}.cam${inst_suffix}.h0.*; dispose ifiles_n ${sta}/atm/hist $*
- set ${CASE}.cam${inst_suffix}.h1.*; dispose ifiles_n ${sta}/atm/hist $*
- set ${CASE}.cam${inst_suffix}.h2.*; dispose ifiles_n ${sta}/atm/hist $*
- set ${CASE}.cam${inst_suffix}.h3.*; dispose ifiles_n ${sta}/atm/hist $*
- set ${CASE}.cam${inst_suffix}.h4.*; dispose ifiles_n ${sta}/atm/hist $*
- set ${CASE}.cam${inst_suffix}.h5.*; dispose ifiles_n ${sta}/atm/hist $*
- set ${CASE}.cam${inst_suffix}.hs.*; dispose ifiles_n ${sta}/atm/hist $*
- set ${CASE}.cam${inst_suffix}.i.*; dispose ifiles_n ${sta}/atm/rest $*
- set cam_initial_${IDX}.nc; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/atm/rest $*
- set ${CASE}.camice${inst_suffix}.r.*; dispose ifiles_y ${sta}/ice/rest $*
- set ${CASE}.camdom${inst_suffix}.r.*; dispose ifiles_y ${sta}/ocn/rest $*
- set ${CASE}.camsom${inst_suffix}.r.*; dispose ifiles_y ${sta}/ocn/rest $*
- set ${CASE}.datm${inst_suffix}.r.* ; dispose ifiles_y ${sta}/atm/rest $*
- set ${CASE}.datm${inst_suffix}.rs* ; dispose ifiles_y ${sta}/atm/rest $*
+# set cam_initial_${IDX}.nc; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/atm/rest $*
+ set ${CASE}.cam*${inst_suffix}.r.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
+ set ${CASE}.cam*${inst_suffix}.rs.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
+ set ${CASE}.cam*${inst_suffix}.ra.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
+ set ${CASE}.cam*${inst_suffix}.rh0.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
+ set ${CASE}.cam*${inst_suffix}.rh1.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
+ set ${CASE}.cam*${inst_suffix}.rh2.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
+ set ${CASE}.cam*${inst_suffix}.rh3.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
+ set ${CASE}.cam*${inst_suffix}.rh4.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
+ set ${CASE}.cam*${inst_suffix}.rh5.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
+ set ${CASE}.cam*${inst_suffix}.h0.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.cam*${inst_suffix}.h1.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.cam*${inst_suffix}.h2.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.cam*${inst_suffix}.h3.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.cam*${inst_suffix}.h4.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.cam*${inst_suffix}.h5.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.cam*${inst_suffix}.hs.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.cam*${inst_suffix}.i.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/init $*
+
+ set ${CASE}.datm${inst_suffix}.r.* ; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
+ set ${CASE}.datm${inst_suffix}.rs* ; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
set ${CASE}.datm${inst_suffix}.h.* ; dispose ifiles_n ${sta}/atm/hist $*
+
+ set ${CASE}.wrf.r01.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
+ set ${CASE}.wrf.r02.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
+ set ${CASE}.wrf.r03.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/atm/rest $*
+ set ${CASE}.wrf.h01.*; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.wrf.h02.*; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.wrf.h03.*; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.wrf.h1aux01.*; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.wrf.h1aux02.*; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.wrf.h1aux03.*; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.wrf.h2aux01.*; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.wrf.h2aux02.*; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.wrf.h2aux03.*; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.wrf.h3aux01.*; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.wrf.h3aux02.*; dispose ifiles_n ${sta}/atm/hist $*
+ set ${CASE}.wrf.h3aux03.*; dispose ifiles_n ${sta}/atm/hist $*
+
IDX=`expr $IDX + 1`
done
@@ -198,45 +200,64 @@
do
get_inst_suffix $IDX $NINST_LND
set lnd${inst_suffix}.log.*; dispose ifiles_n ${sta}/lnd/logs $*
- set clm_restart_${IDX}.nc; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/lnd/rest $*
- set ${CASE}.clm?${inst_suffix}.r.*; dispose ifiles_n ${sta}/lnd/rest $*
- set ${CASE}.clm?${inst_suffix}.rh0.*; dispose ifiles_y ${sta}/lnd/rest $*
- set ${CASE}.clm?${inst_suffix}.rh1.*; dispose ifiles_y ${sta}/lnd/rest $*
- set ${CASE}.clm?${inst_suffix}.rh2.*; dispose ifiles_y ${sta}/lnd/rest $*
- set ${CASE}.clm?${inst_suffix}.rh3.*; dispose ifiles_y ${sta}/lnd/rest $*
- set ${CASE}.clm?${inst_suffix}.rh4.*; dispose ifiles_y ${sta}/lnd/rest $*
- set ${CASE}.clm?${inst_suffix}.rh5.*; dispose ifiles_y ${sta}/lnd/rest $*
- set ${CASE}.clm?${inst_suffix}.h0.*; dispose ifiles_n ${sta}/lnd/hist $*
- set ${CASE}.clm?${inst_suffix}.h1.*; dispose ifiles_n ${sta}/lnd/hist $*
- set ${CASE}.clm?${inst_suffix}.h2.*; dispose ifiles_n ${sta}/lnd/hist $*
- set ${CASE}.clm?${inst_suffix}.h3.*; dispose ifiles_n ${sta}/lnd/hist $*
- set ${CASE}.clm?${inst_suffix}.h4.*; dispose ifiles_n ${sta}/lnd/hist $*
- set ${CASE}.clm?${inst_suffix}.h5.*; dispose ifiles_n ${sta}/lnd/hist $*
- set ${CASE}.clm?${inst_suffix}.hv.*; dispose ifiles_n ${sta}/lnd/hist $*
+# set clm_restart_${IDX}.nc; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/lnd/rest $*
+ set ${CASE}.clm?${inst_suffix}.r.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/lnd/rest $*
+ set ${CASE}.clm?${inst_suffix}.rh0.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/lnd/rest $*
+ set ${CASE}.clm?${inst_suffix}.rh1.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/lnd/rest $*
+ set ${CASE}.clm?${inst_suffix}.rh2.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/lnd/rest $*
+ set ${CASE}.clm?${inst_suffix}.rh3.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/lnd/rest $*
+ set ${CASE}.clm?${inst_suffix}.rh4.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/lnd/rest $*
+ set ${CASE}.clm?${inst_suffix}.rh5.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/lnd/rest $*
+ set ${CASE}.clm?${inst_suffix}.h0.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/lnd/hist $*
+ set ${CASE}.clm?${inst_suffix}.h1.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/lnd/hist $*
+ set ${CASE}.clm?${inst_suffix}.h2.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/lnd/hist $*
+ set ${CASE}.clm?${inst_suffix}.h3.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/lnd/hist $*
+ set ${CASE}.clm?${inst_suffix}.h4.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/lnd/hist $*
+ set ${CASE}.clm?${inst_suffix}.h5.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/lnd/hist $*
+ set ${CASE}.clm?${inst_suffix}.hv.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/lnd/hist $*
set ${CASE}.clm?${inst_suffix}.i.*; dispose ifiles_y ${sta}/lnd/init $*
- set ${CASE}.dlnd${inst_suffix}.r.* ; dispose ifiles_y ${sta}/lnd/rest $*
- set ${CASE}.dlnd${inst_suffix}.rs* ; dispose ifiles_y ${sta}/lnd/rest $*
+
+ set ${CASE}.dlnd${inst_suffix}.r.* ; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/lnd/rest $*
+ set ${CASE}.dlnd${inst_suffix}.rs* ; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/lnd/rest $*
set ${CASE}.dlnd${inst_suffix}.h.* ; dispose ifiles_n ${sta}/lnd/hist $*
IDX=`expr $IDX + 1`
done
IDX=1
+while [ $IDX -le $NINST_ROF ]
+do
+ get_inst_suffix $IDX $NINST_ROF
+ set rof${inst_suffix}.log.*; dispose ifiles_n ${sta}/rof/logs $*
+ set ${CASE}.rtm${inst_suffix}.r.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/rof/rest $*
+ set ${CASE}.rtm${inst_suffix}.rh0.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/rof/rest $*
+ set ${CASE}.rtm${inst_suffix}.rh1.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/rof/rest $*
+ set ${CASE}.rtm${inst_suffix}.rh2.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/rof/rest $*
+ set ${CASE}.rtm${inst_suffix}.rh3.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/rof/rest $*
+ set ${CASE}.rtm${inst_suffix}.h0.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/rof/hist $*
+ set ${CASE}.rtm${inst_suffix}.h1.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/rof/hist $*
+ set ${CASE}.rtm${inst_suffix}.h2.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/rof/hist $*
+ set ${CASE}.rtm${inst_suffix}.h3.*; latest=`ls -rt $* 2> /dev/null | tail -1`; cp $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/rof/hist $*
+ IDX=`expr $IDX + 1`
+done
+
+
+IDX=1
while [ $IDX -le $NINST_ICE ]
do
get_inst_suffix $IDX $NINST_ICE
set ice${inst_suffix}.log.*; dispose ifiles_n ${sta}/ice/logs $*
- set ice_restart_${IDX}.nc; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/ice/rest $*
- set ${CASE}.cice${inst_suffix}.r.*; dispose ifiles_n ${sta}/ice/rest $*
- set ${CASE}.cice${inst_suffix}.r.[0-9]*; dispose ifiles_y ${sta}/ice/rest $*
- set ${CASE}.cice${inst_suffix}.r.volpn*; dispose ifiles_y ${sta}/ice/rest $*
- set ${CASE}.cice${inst_suffix}.r.dEdd*; dispose ifiles_y ${sta}/ice/rest $*
- set ${CASE}.cice${inst_suffix}.r.age*; dispose ifiles_y ${sta}/ice/rest $*
- set ${CASE}.cice${inst_suffix}.r.aero*; dispose ifiles_y ${sta}/ice/rest $*
+# set ice_restart_${IDX}.nc; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_n ${sta}/ice/rest $*
+ set ${CASE}.cice${inst_suffix}.r.[0-9]*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ice/rest $*
+ set ${CASE}.cice${inst_suffix}.r.volpn*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ice/rest $*
+ set ${CASE}.cice${inst_suffix}.r.dEdd*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ice/rest $*
+ set ${CASE}.cice${inst_suffix}.r.age*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ice/rest $*
+ set ${CASE}.cice${inst_suffix}.r.aero*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ice/rest $*
set ${CASE}.cice${inst_suffix}.h*; dispose ifiles_n ${sta}/ice/hist $*
set ${CASE}.cice${inst_suffix}.i.*; dispose ifiles_y ${sta}/ice/init $*
- set ${CASE}.dice${inst_suffix}.r.* ; dispose ifiles_y ${sta}/ice/rest $*
- set ${CASE}.dice${inst_suffix}.rs* ; dispose ifiles_y ${sta}/ice/rest $*
+
+ set ${CASE}.dice${inst_suffix}.r.* ; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ice/rest $*
+ set ${CASE}.dice${inst_suffix}.rs* ; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ice/rest $*
set ${CASE}.dice${inst_suffix}.h.* ; dispose ifiles_n ${sta}/ice/hist $*
IDX=`expr $IDX + 1`
done
@@ -247,20 +268,21 @@
do
get_inst_suffix $IDX $NINST_OCN
set ocn${inst_suffix}.log.*; dispose ifiles_n ${sta}/ocn/logs $*
- set ${CASE}.pop${inst_suffix}.r.*.hdr; dispose ifiles_y ${sta}/ocn/rest $*
- set ${CASE}.pop${inst_suffix}.r.*0000; dispose ifiles_y ${sta}/ocn/rest $*
- set ${CASE}.pop${inst_suffix}.r.*0000.nc; dispose ifiles_y ${sta}/ocn/rest $*
- set ${CASE}.pop${inst_suffix}.rh.ecosys.*.hdr; dispose ifiles_y ${sta}/ocn/rest $*
- set ${CASE}.pop${inst_suffix}.rh.ecosys.*0000; dispose ifiles_y ${sta}/ocn/rest $*
- set ${CASE}.pop${inst_suffix}.rh.ecosys.*0000.nc; dispose ifiles_y ${sta}/ocn/rest $*
- set ${CASE}.pop${inst_suffix}.rh.*.hdr; dispose ifiles_y ${sta}/ocn/rest $*
- set ${CASE}.pop${inst_suffix}.rh.*0000; dispose ifiles_y ${sta}/ocn/rest $*
- set ${CASE}.pop${inst_suffix}.rh.*0000.nc; dispose ifiles_y ${sta}/ocn/rest $*
- set ${CASE}.pop${inst_suffix}.ro.*; dispose ifiles_y ${sta}/ocn/rest $*
+ set ${CASE}.pop${inst_suffix}.r.*.hdr; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ocn/rest $*
+ set ${CASE}.pop${inst_suffix}.r.*0000; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ocn/rest $*
+ set ${CASE}.pop${inst_suffix}.r.*0000.nc; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ocn/rest $*
+ set ${CASE}.pop${inst_suffix}.rh.ecosys.*.hdr; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ocn/rest $*
+ set ${CASE}.pop${inst_suffix}.rh.ecosys.*0000; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ocn/rest $*
+ set ${CASE}.pop${inst_suffix}.rh.ecosys.*0000.nc; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ocn/rest $*
+ set ${CASE}.pop${inst_suffix}.rh.*.hdr; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ocn/rest $*
+ set ${CASE}.pop${inst_suffix}.rh.*0000; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ocn/rest $*
+ set ${CASE}.pop${inst_suffix}.rh.*0000.nc; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ocn/rest $*
+ set ${CASE}.pop${inst_suffix}.ro.*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ocn/rest $*
set ${CASE}.pop${inst_suffix}.d?*; dispose ifiles_n ${sta}/ocn/hist $*
set ${CASE}.pop${inst_suffix}.h*; dispose ifiles_n ${sta}/ocn/hist $*
- set ${CASE}.docn${inst_suffix}.r.* ; dispose ifiles_y ${sta}/ocn/rest $*
- set ${CASE}.docn${inst_suffix}.rs* ; dispose ifiles_y ${sta}/ocn/rest $*
+
+ set ${CASE}.docn${inst_suffix}.r.* ; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ocn/rest $*
+ set ${CASE}.docn${inst_suffix}.rs* ; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/ocn/rest $*
set ${CASE}.docn${inst_suffix}.h.* ; dispose ifiles_n ${sta}/ocn/hist $*
IDX=`expr $IDX + 1`
done
@@ -271,17 +293,17 @@
do
get_inst_suffix $IDX $NINST_GLC
set glc${inst_suffix}.log.*; dispose ifiles_n ${sta}/glc/logs $*
- set ${CASE}.cism${inst_suffix}.r.[0-9]*; dispose ifiles_y ${sta}/glc/rest $*
- set ${CASE}.cism${inst_suffix}.r.volpn*; dispose ifiles_y ${sta}/glc/rest $*
- set ${CASE}.cism${inst_suffix}.r.dEdd*; dispose ifiles_y ${sta}/glc/rest $*
- set ${CASE}.cism${inst_suffix}.r.age*; dispose ifiles_y ${sta}/glc/rest $*
- set ${CASE}.cism${inst_suffix}.r.aero*; dispose ifiles_y ${sta}/glc/rest $*
+ set ${CASE}.cism${inst_suffix}.r.[0-9]*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/glc/rest $*
+ set ${CASE}.cism${inst_suffix}.r.volpn*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/glc/rest $*
+ set ${CASE}.cism${inst_suffix}.r.dEdd*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/glc/rest $*
+ set ${CASE}.cism${inst_suffix}.r.age*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/glc/rest $*
+ set ${CASE}.cism${inst_suffix}.r.aero*; latest=`ls -rt $* 2> /dev/null | tail -1`; mv $latest ${sta}/rest/${dname} 2> /dev/null; dispose ifiles_y ${sta}/glc/rest $*
set ${CASE}.cism${inst_suffix}.h*; dispose ifiles_n ${sta}/glc/hist $*
set ${CASE}.cism${inst_suffix}.i.*; dispose ifiles_y ${sta}/glc/init $*
IDX=`expr $IDX + 1`
done
-
+#copy back the required files for next restart
cp ${sta}/rest/${dname}/* .
mv ${sta}/* ${DOUT_S_ROOT}
More information about the Dart-dev
mailing list