Warning, /tools/tst_2+2 is written in an unsupported language. File is not indexed.
view on githubraw file Latest commit 1e25bc25 on 2021-02-16 20:56:47 UTC
84d61bd829 Jean*0001 #! /usr/bin/env bash
0002
0003 rnp_loc()
0004 {
0005 # rnp_loc arg_1 arg_2
0006 # rename files with prefix = 'arg_1' to files with prefix = 'arg_2'
84c658b8ac Jean*0007 if [ $prt -ge 1 ] ; then echo ' rnp_loc:' $1 $2 ; fi
84d61bd829 Jean*0008 # rnp -s $1 $2
0009 listY=`ls -1 $1*`
0010 for yy in $listY
0011 do
0012 zz=`echo $yy | sed "s/^$1/$2/"`
84c658b8ac Jean*0013 if [ $prt -ge 2 ] ; then echo ' '$cmdMV $yy $zz ; fi
0014 if test $action = 1 ; then $cmdMV $yy $zz ; fi
84d61bd829 Jean*0015 done
0016 }
0017
84c658b8ac Jean*0018 #-----------
0019
0020 move_outp()
0021 {
0022 # move_outp arg_1
0023 # move mitgcm output files to directory 'arg_1'
0024 if [ $prt -ge 1 ] ; then echo ' move_outp:' $1 ; fi
0025 mv *.data *.meta $1
7b03dab2b2 jm-c 0026 listF=`ls -1 *.txt STD???.???? 2> /dev/null`
84c658b8ac Jean*0027 if test "x$listF" != x ; then mv $listF $1 ; fi
0028 #- move back sym link:
0029 listL=`find $1 -type l`
0030 ttd=`echo $listL | wc -w`
0031 #echo "ttd=$ttd"
0032 if test $ttd != 0 ; then
0033 #echo "listL='$listL'"
0034 if [ $prt -ge 2 ] ; then echo " mv back:" $listL | sed "s/$1\///g" ; fi
0035 mv $listL .
0036 fi
0037 }
0038
84d61bd829 Jean*0039 #---------------------------
0040
0041 #- exit status:
0042 # 0 -> test is successful
828ecdcdfe Jean*0043 # 1 -> fail in 1rst run
0044 # 2 -> fail in 2nd run
0045 # 3 -> fail in 3rd run
84d61bd829 Jean*0046 # 4 -> pickup*.data (written at the end of 2+2 & 4 it run) are different
0047 # 5 -> pickup*.meta (written at the end of 2+2 & 4 it run) are different
0048 # 6 -> missing 'data.tst' file (removed or not yet generated ?)
b9d7579ec5 Jean*0049 # 7 -> missing executable or standard output from previous run
84d61bd829 Jean*0050 # 8 -> missing information (in standard output of previous run) about pickup
0051 # 9 -> error in argument list
0052
828ecdcdfe Jean*0053 #- default:
0054 Nit=2
0055 prt=1 # 1 = print some informations ; 2 = print more informations
0056 action=1
0057 cmdMV='mv -f'
0058 tmpDir='temp_tst'
5fc11be0f5 Jean*0059 wait2run=0 # if needs sometime for file system syncro on all nodes
828ecdcdfe Jean*0060
0061 #- default executable, command-line , using MPI:
0062 gcmEXE=./mitgcmuv
0063 cmdEXE=
0064 mpi=0
0065
84d61bd829 Jean*0066 nArg=$#
828ecdcdfe Jean*0067 prev=
0068 for xx ; do
0069 #echo "xx='$xx'"
0070 # If the previous option needs an argument, assign it.
0071 if test -n "$prev"; then
0072 eval "$prev=\$xx"
0073 prev=
0074 nArg=`expr $nArg - 2`
0075 continue
0076 fi
0077
0078 case $xx in
0079 -mpi ) mpi=1 ; nArg=`expr $nArg - 1` ;;
0080 -exe ) prev=gcmEXE ;;
0081 -command ) prev=cmdEXE ;;
0082 *) flag=$xx ;;
0083 esac
0084 done
f239f71200 Jean*0085 #echo "cmdEXE='$cmdEXE'"
0086 #echo "nArg=$nArg ; mpi=$mpi ; flag='$flag'"
84d61bd829 Jean*0087
0088 case $nArg in
0089 1) ;;
828ecdcdfe Jean*0090 *) echo "Usage: `basename $0` flag [-mpi] [-exe EXECUTABLE] [-command COMMAND]"
84d61bd829 Jean*0091 echo " Check restart: compare 1 run of 2 x $Nit it long"
0092 echo " with 2 consecutive runs of $Nit it long each"
0093 echo " where: flag = 0 -> prepare (from a previous run) pickup & data files"
828ecdcdfe Jean*0094 echo " flag = 1 -> do the 3 runs (using COMMAND"
0095 echo " or simply using EXECUTABLE, default=$gcmEXE)"
84d61bd829 Jean*0096 echo " flag = 2 -> compare std_outp"
0097 echo " flag = 3 -> compare pickup files"
0098 echo " flag = 4 -> clean-up output files"
84c658b8ac Jean*0099 echo " flag = NC -> do 0,1,2,3 sequentially (no cleaning)"
84d61bd829 Jean*0100 echo " flag = All -> do 0,1,2,3,4 sequentially"
0101 exit 9 ;;
0102 esac
84c658b8ac Jean*0103 if test $flag = 'NC' -o $flag = 'All' ; then Multi=1 ; else Multi=0 ; fi
84d61bd829 Jean*0104
828ecdcdfe Jean*0105 #-- set the run-command :
0106 if test "x$cmdEXE" = x
0107 then
5fc11be0f5 Jean*0108 if [ $mpi -ge 1 ] ; then
1e25bc2551 Jean*0109 cmdEXE="mpirun -machinefile ../../mf -np 2 $gcmEXE"
5fc11be0f5 Jean*0110 else
828ecdcdfe Jean*0111 cmdEXE=$gcmEXE
5fc11be0f5 Jean*0112 fi
828ecdcdfe Jean*0113 fi
5fc11be0f5 Jean*0114 echo "cmdEXE='$cmdEXE'"
84d61bd829 Jean*0115 #=========================
0116
84c658b8ac Jean*0117 if test $flag = '0' -o $Multi = '1' ; then
84d61bd829 Jean*0118 #----------------------------------------------------------------------
b9d7579ec5 Jean*0119 # check for executable:
0bd0f1dece Jean*0120 if test ! -x $gcmEXE ; then
b9d7579ec5 Jean*0121 echo "file '$gcmEXE' does not exist or is not executable"
0122 exit 7
0123 fi
84d61bd829 Jean*0124 # last pickup written (from previous run):
828ecdcdfe Jean*0125 if [ $mpi -ge 1 ]
84d61bd829 Jean*0126 then outpRun='STDOUT.0000'
0127 else outpRun='output.txt'
0128 fi
828ecdcdfe Jean*0129 if test -r $outpRun
84d61bd829 Jean*0130 then
0131 # grep ' %CHECKPOINT ' $outpRun | tail -1
0132 lastPick=`grep ' %CHECKPOINT ' $outpRun | sed 's/^.*%CHECKPOINT //' | tail -1`
828ecdcdfe Jean*0133 if test "x$lastPick" = x
0134 then
84d61bd829 Jean*0135 echo "no pickup information written in '$outpRun' from previous run"
0136 exit 8
0137 else
0138 iter=`echo $lastPick | awk '{print $1}'`
84c658b8ac Jean*0139 sufx=`echo $lastPick | awk '{print $2}'`
bdafab7f87 Jean*0140 echo "from previous run $outpRun, lastPick='$lastPick' ; iter='$iter' ; sufx='$sufx'"
84d61bd829 Jean*0141 fi
828ecdcdfe Jean*0142 else
84d61bd829 Jean*0143 echo "no standard output file '$outpRun' from previous run"
0144 exit 7
0145 fi
0146
0147 #-------------------------
0148 echo "prepare parameter file 'data.tst' :"
0149 cp -p -f data data.tst
5ef156a5db Jean*0150 listOut='startTime endTime nIter0 nTimeSteps nEndIter chkPtFreq pChkPtFreq'
0151 listOut=$listOut' pickupSuff usePickupBeforeC54 mdsioLocalDir pickupStrictlyMatch'
84d61bd829 Jean*0152 #- comment out (in data.tst) all parameters from list: 'listOut'
0153 for yy in $listOut
0154 do
0155 if [ $prt -ge 2 ] ; then echo -n ' commenting out:' $yy ; fi
0156 nn=`grep -i -c "^ *$yy *=" data.tst`
0157 if [ $nn -ge 1 ]
0158 then
0159 listN=`grep -i -n "^ *$yy *=" data.tst | sed 's/:.*$//'`
0160 if [ $prt -ge 2 ] ; then echo " : found on line: $listN" ; fi
0161 for ll in $listN
0162 do
0163 sed "$ll s/^./#&/" data.tst > data.tmp_$$
0164 # diff data.tmp_$$ data.tst
0165 mv -f data.tmp_$$ data.tst
0166 done
0167 else if [ $prt -ge 2 ] ; then echo ' : not found' ; fi
0168 fi
0169 done
0170 if [ $prt -ge 2 ] ; then echo ' ' ; fi
0171 # add nIter0 & nTimeSteps in namelist "PARM03":
0172 Dbl=`expr $Nit \* 2`
2403391fc0 Mart*0173 sed -e "/^ *\&PARM03/a\\
050aa9fb61 Mart*0174 \ nTimeSteps=$Dbl," data.tst > data.tmp_$$
84d61bd829 Jean*0175 mv -f data.tmp_$$ data.tst
2403391fc0 Mart*0176 sed -e "/^ *\&PARM03/a\\
050aa9fb61 Mart*0177 \ nIter0=$iter," data.tst > data.tmp_$$
84d61bd829 Jean*0178 mv -f data.tmp_$$ data.tst
0179 echo "prepare file 'data.tst' : done"
828ecdcdfe Jean*0180 if [ $prt -ge 1 ] ; then
84d61bd829 Jean*0181 echo ' diff data.tst data' ; diff data.tst data ; echo ' ' ;
0182 fi
0183 #---- clean up current dir: move output to temp_tst dir:
0184 if test $action = 1 ; then
0185 rm -rf $tmpDir
0186 mkdir $tmpDir
0187 mv -f *.data $tmpDir
0188 mv -f *.meta $tmpDir
5fc11be0f5 Jean*0189 mv -f *.txt $tmpDir 2> /dev/null
7b03dab2b2 jm-c 0190 mv -f STD???.[0-9][0-9][0-9][0-9] $tmpDir
84d61bd829 Jean*0191 #- move main parameter file "data":
0192 mv -f data $tmpDir
0193 #- do not deal with MNC pickup at all:
0194 cp -p -f data.pkg data.tmp_$$
0195 mv -f data.pkg $tmpDir
0196 mv -f data.tmp_$$ data.pkg
0197 yy='useMNC'
0198 if [ $prt -ge 2 ] ; then echo -n " commenting out: $yy in data.pkg" ; fi
0199 nn=`grep -i -c "^ *$yy *=" data.pkg`
0200 if [ $nn -ge 1 ]
0201 then
0202 listN=`grep -i -n "^ *$yy *=" data.pkg | sed 's/:.*$//'`
0203 if [ $prt -ge 2 ] ; then echo " : found on line: $listN" ; fi
0204 for ll in $listN
0205 do
0206 sed "$ll s/^./#&/" data.pkg > data.tmp_$$
828ecdcdfe Jean*0207 if [ $prt -ge 1 ] ; then echo ' changes in data.pkg'
84d61bd829 Jean*0208 diff data.tmp_$$ data.pkg ; echo ' ' ; fi
0209 mv -f data.tmp_$$ data.pkg
0210 done
0211 else if [ $prt -ge 2 ] ; then echo ' : not found' ; echo ' ' ; fi
0212 fi
0213 fi
84c658b8ac Jean*0214 #-------------------------
0215 #-- link back pickup files
0216 listS=`ls $tmpDir/pickup*.${sufx}* 2> /dev/null | head -1`
b9d7579ec5 Jean*0217 if test "x$listS" != x ; then
84c658b8ac Jean*0218 if [ $prt -ge 1 ] ; then echo ' link back:' $tmpDir'/pickup*.'${sufx}'*' ; fi
0219 if test $action = 1 ; then ln -s $tmpDir/pickup*.${sufx}* . ; fi
0220 fi
0221 #- rename pickup (if needed)
0222 nIt0c=`printf "%10.10i\n" $iter`
0223 if test $sufx = $nIt0c
0224 then
0225 echo "no need to change pickup sufix"
0226 else
0227 listP=`ls pickup*.${sufx}* 2> /dev/null | sed 's/\..*//g' | uniq`
0228 if test "x$listP" = x
0229 then echo ' rename' $sufx '->' $nIt0c ': no file to rename'
0230 else
0231 if [ $prt -ge 1 ] ; then echo ' rename' $sufx '->' $nIt0c 'for all:' $listP ; fi
0232 for yy in $listP
0233 do
0234 rnp_loc $yy.${sufx} $yy.$nIt0c
0235 done
0236 fi
0237 fi
84d61bd829 Jean*0238 #----------------------------------------------------------------------
0239 fi
0240
0241 #=========================
0242
0243 if test -r data.tst ; then
0244 #- extract length of runs & starting iter number from file "data.tst"
0245 num0=`sed -n 's/^ nIter0=//p' data.tst | sed 's/,//g' | sed 's/ //g'`
0246 Dbl=`sed -n 's/^ nTimeSteps=//p' data.tst | sed 's/,//g'`
0247 Nit=`expr $Dbl / 2`
0248 # Nit = Nb of iter of 2nd & 3rd run (1rst one is 2 x Nit iter long)
0249 else
0250 echo '=> Need a readable "data.tst" file for the 2 x Nit iterations run'
0251 exit 6
0252 fi
0253
0254 #- dir where to put the results :
0255 dir1=res_2it
0256 dir2=res_1iA
0257 dir3=res_1iB
0258
0259 #---------------------------
0260 num1=`expr $num0 + $Nit`
0261 num2=`expr $num0 + $Dbl`
0262 num0c=`printf "%10.10i\n" $num0`
0263 num1c=`printf "%10.10i\n" $num1`
0264 num2c=`printf "%10.10i\n" $num2`
0265 echo " start-end iter: $num0 , $num1 , $num2"
0266 echo " sufix: '$num0c' '$num1c' '$num2c'"
828ecdcdfe Jean*0267 echo ' cmdEXE='$cmdEXE
84d61bd829 Jean*0268 #exit
0269 #---------------------------
0270
84c658b8ac Jean*0271 if test $flag = '1' -o $Multi = '1' ; then
84d61bd829 Jean*0272 #----------------------------------------------------------------------
0273 #- check at the end of each run for pickup with prefix:
0274 pref='pickup'
0275 offLine=`grep -i -c '^ *useOffLine *= *\.TRUE\.' data.pkg`
0276 if [ $offLine -ge 1 ] ; then pref='pickup_ptracers' ; fi
0277 #---------------------------
0278 if test -d $dir1 -o -d $dir2 -o -d $dir3
0279 then echo -n 'remove dir: '
0280 if test -d $dir1 ; then echo -n $dir1 ' , ' ; rm -r $dir1 ; fi
0281 if test -d $dir2 ; then echo -n $dir2 ' , ' ; rm -r $dir2 ; fi
0282 if test -d $dir3 ; then echo -n $dir3 ' , ' ; rm -r $dir3 ; fi
0283 echo ' '
0284 fi
0285 mkdir $dir1 $dir2 $dir3
0286 rm -f STDERR.0000
0287
0288 #--- 1rst run ( 2 x Nit iter )
0289 cp -p data.tst data
0290 echo '==> START RUN 2 x' $Nit 'it'
0291 if [ $mpi -ge 1 ]
b9d7579ec5 Jean*0292 then
5fc11be0f5 Jean*0293 sleep $wait2run
0294 $cmdEXE > TTT.out.2it 2>&1
0295 mv STDOUT.0000 std_outp.2it
0296 cat TTT.out.2it
828ecdcdfe Jean*0297 else $cmdEXE > std_outp.2it
84d61bd829 Jean*0298 fi
3e5190b2b6 Jean*0299 if test ! -s std_outp.2it
0300 then echo "empty or no output file: 'std_outp.2it' => exit" ; exit 1 ; fi
84d61bd829 Jean*0301 mv STDERR.0000 std__err.2it
0302 out=`egrep -c 'STOP ABNORMAL END' std_outp.2it`
0303 if test $out != 0
0304 then echo "==> RUN 2 x $Nit it : ABNORMAL END => exit" ; exit 1 ; fi
edcaaac64d Jean*0305 listF=`ls -1 $pref.ckptA*.data 2> /dev/null`
0306 if test "x$listF" = x
0307 then echo "==> RUN 2 x $Nit it STOP without writing $pref => exit" ; exit 1
0308 else echo "==> END RUN 2 x $Nit it" ; fi
84d61bd829 Jean*0309 listP=`ls pickup*.ckptA* | sed 's/\..*//g' | uniq`
0310 echo ' listP=' $listP
0311 for xx in $listP
0312 do
0313 rnp_loc $xx.ckptA $xx.$num2c
0314 done
84c658b8ac Jean*0315 move_outp $dir1
84d61bd829 Jean*0316 #--- 2nd run ( Nit iter , restart from same Iter = num0 as 1rst run )
5fc11be0f5 Jean*0317 sed "s/^ nTimeSteps=$Dbl/ nTimeSteps=$Nit/g" data.tst > data.tmp
0318 mv -f data.tmp data
84d61bd829 Jean*0319 echo '==> START RUN 1iA'
0320 if [ $mpi -ge 1 ]
b9d7579ec5 Jean*0321 then
5fc11be0f5 Jean*0322 sleep $wait2run
0323 $cmdEXE > TTT.out.1iA 2>&1
0324 mv STDOUT.0000 std_outp.1iA
0325 cat TTT.out.1iA
828ecdcdfe Jean*0326 else $cmdEXE > std_outp.1iA
84d61bd829 Jean*0327 fi
3e5190b2b6 Jean*0328 if test ! -s std_outp.1iA
0329 then echo "empty or no output file: 'std_outp.1iA' => exit" ; exit 2 ; fi
84d61bd829 Jean*0330 mv STDERR.0000 std__err.1iA
0331 out=`egrep -c 'STOP ABNORMAL END' std_outp.1iA`
0332 if test $out != 0
0333 then echo "==> RUN 1iA : ABNORMAL END => exit" ; exit 2 ; fi
edcaaac64d Jean*0334 listF=`ls -1 $pref.ckptA*.data 2> /dev/null`
0335 if test "x$listF" = x
0336 then echo "==> RUN 1iA STOP without writing $pref => exit" ; exit 2
0337 else echo "==> END RUN 1iA" ; fi
84d61bd829 Jean*0338 for xx in $listP
0339 do
0340 rnp_loc $xx.ckptA $xx.$num1c
0341 done
84c658b8ac Jean*0342 move_outp $dir2
84d61bd829 Jean*0343 #--- 3rd run ( Nit iter , restart from 2nd )
0344 ln -s $dir2/pickup*.$num1c.* .
0345 sed "s/^ nIter0=$num0/ nIter0=$num1/g" data > data.tmp
0346 mv -f data.tmp data
0347 echo '==> START RUN 1iB'
0348 if [ $mpi -ge 1 ]
b9d7579ec5 Jean*0349 then
5fc11be0f5 Jean*0350 sleep $wait2run
0351 $cmdEXE > TTT.out.1iB 2>&1
0352 mv STDOUT.0000 std_outp.1iB
0353 cat TTT.out.1iB
828ecdcdfe Jean*0354 else $cmdEXE > std_outp.1iB
84d61bd829 Jean*0355 fi
3e5190b2b6 Jean*0356 if test ! -s std_outp.1iB
0357 then echo "empty or no output file: 'std_outp.1iB' => exit" ; exit 3 ; fi
84d61bd829 Jean*0358 mv STDERR.0000 std__err.1iB
0359 out=`egrep -c 'STOP ABNORMAL END' std_outp.1iB`
0360 if test $out != 0
0361 then echo "==> RUN 1iB : ABNORMAL END => exit" ; exit 3 ; fi
edcaaac64d Jean*0362 listF=`ls -1 $pref.ckptA*.data 2> /dev/null`
0363 if test "x$listF" = x
0364 then echo "==> RUN 1iB STOP without writing $pref => exit" ; exit 3
0365 else echo "==> END RUN 1iB" ; fi
84d61bd829 Jean*0366 for xx in $listP
0367 do
0368 rnp_loc $xx.ckptA $xx.$num2c
0369 done
84c658b8ac Jean*0370 # remove pickup*.$mun1c* sym-link:
0371 find . ! -name . -prune -type l -name 'pickup*.'${num1c}'*' -exec rm {} \;
0372 move_outp $dir3
84d61bd829 Jean*0373 rm data
0374 #----------------------------------------------------------------------
0375 fi
0376
84c658b8ac Jean*0377 if test $flag = '2' -o $Multi = '1' ; then
84d61bd829 Jean*0378 #----------------------------------------------------------------------
b020d20bef Jean*0379 listCGini="2"
0380 #-- check if using 3-D solver
0381 nn=`grep -i -c "^ *nonHydrostatic *= *\.TRUE\." data.tst`
b9d7579ec5 Jean*0382 if [ $nn -eq 0 ] ; then
b020d20bef Jean*0383 nn=`grep -i -c "^ *implicitIntGravWave *= *\.TRUE\." data.tst`
0384 fi
0385 if [ $nn -ge 1 ] ; then listCGini="$listCGini 3"; fi
0386 for nn in $listCGini
0387 do
0388 echo ' ' ; echo "== compare cg${nn}d_init_res :"
0389 echo ' run 1iA:'
0390 grep "cg${nn}d_init_res" std_outp.1iA \
0391 | sed "s/.* cg${nn}d_init_res =//"
0392 echo ' run 1iB:'
0393 grep "cg${nn}d_init_res" std_outp.1iB \
0394 | sed "s/.* cg${nn}d_init_res =//"
0395 echo ' run 2it:'
0396 grep "cg${nn}d_init_res" std_outp.2it \
0397 | sed "s/.* cg${nn}d_init_res =//"
0398 done
84d61bd829 Jean*0399 #----------------------------------------------------------------------
0400 fi
0401
84c658b8ac Jean*0402 if test $flag = '3' -o $Multi = '1' ; then
84d61bd829 Jean*0403 #----------------------------------------------------------------------
828ecdcdfe Jean*0404 echo ' '
84d61bd829 Jean*0405 echo "== diff pickup files : end of 1rst run (2x$Nit it) & end of 3rd run (2nd $Nit it)"
0406 listP=`( cd $dir1 ; ls pickup*.$num2c* | sed 's/\..*//g' | uniq )`
0407 chkmeta='Y'
0408 for yy in $listP
0409 do
edcaaac64d Jean*0410 listY=`(cd $dir1 ; ls $yy.$num2c*.data | sed "s/$yy\.$num2c//" | sed "s/data$//")`
84d61bd829 Jean*0411 zz=$yy.$num2c
0412 echo '--> file='$zz', listY='$listY
0413 for xx in $listY
0414 do
edcaaac64d Jean*0415 echo ' diff' $dir1/$zz${xx}data $dir3
0416 diff $dir1/$zz${xx}data $dir3
84d61bd829 Jean*0417 out=$?
0418 if test $out != 0 ; then
bdafab7f87 Jean*0419 #-- refined check: exclude diff between +0 and -0
0420 nbDif=`cmp -l $dir1/$zz${xx}data $dir3/$zz${xx}data \
0421 | sed -e '/ 0 200$/d' -e '/ 200 0$/d' | wc -l`
0422 if test $nbDif != 0 ; then
0423 echo "Diff outp= $out (nb-Diff= $nbDif ) ==> stop"
0424 exit 4
0425 fi
84d61bd829 Jean*0426 fi
edcaaac64d Jean*0427 if test $chkmeta = 'Y' -a -f $dir1/$zz${xx}meta ; then
0428 echo ' diff' $dir1/$zz${xx}meta $dir3
0429 diff $dir1/$zz${xx}meta $dir3
84d61bd829 Jean*0430 out=$?
828ecdcdfe Jean*0431 if test $out != 0 ; then
84d61bd829 Jean*0432 echo 'Diff outp=' $out ' ==> stop'
0433 exit 5
0434 fi
0435 fi
0436 done
0437 done
0438 #----------------------------------------------------------------------
0439 fi
0440
0441 if test $flag = '4' -o $flag = 'All' ; then
0442 #-------------
828ecdcdfe Jean*0443 echo ' '
84d61bd829 Jean*0444 echo "== clean-up and reset :"
84c658b8ac Jean*0445 echo '--> remove pickup*.'$num0c'* sym-links:'
0446 #find . ! -name . -prune -type l -name 'pickup*.'${num0c}'*' -exec rm {} \;
0447 listS=`find . ! -name . -prune -type l -name 'pickup*.'${num0c}'*'`
0448 if [ $prt -ge 2 ] ; then echo ' rm' $listS ; fi
0449 rm -f $listS
84d61bd829 Jean*0450 echo '--> remove output dir and output files:'
0451 echo ' rm -rf' $dir1 $dir2 $dir3
0452 rm -rf $dir1 $dir2 $dir3
0453 echo ' rm -f' std_????.?i?
0454 rm -f std_????.?i?
5fc11be0f5 Jean*0455 rm -f TTT.out.?i? 2> /dev/null
b88c45a521 Jean*0456 echo ' rm -f' data data.pkg data.tst
0457 rm -f data data.pkg data.tst
84d61bd829 Jean*0458 #- move back files from temp_tst dir:
0459 if test -d $tmpDir ; then
0460 echo "--> move back files from 'temp_tst' dir."
0461 cd $tmpDir ; mv -f * .. ; cd ..
0462 rmdir $tmpDir
0463 fi
0464 #-------------
0465 fi
0466 exit 0