# # Acquire a series of mss files to the disk. # Optionally perform an ncks command on the disk file $dskfile, # saving a new disk file $ncksfile. Original $dskfile can # then be removed. # # Set base names for mss and disk files: # set mss_basename = "/GANGLU/timegcm1.2/s_jan05_all_" set dsk_basename = "GANGLU.timegcm1.2.s_jan05_all_" set ncks_basename = "s_jan05_all_" # # Set first and last file numbers to acquire: # File names will be $basename with the file number (3 digits) # and the string ".nc" appended. # # @ i0 = 11 @ i1 = 20 # @ nfiles = ($i1 - $i0) + 1 echo "Will acquire $nfiles files (${i0} to ${i1}):" @ ifile = $i0 @ n = 1 while ($ifile <= $i1) if ($ifile <= 9) then set num = "00${ifile}" else if ($ifile <= 99) then set num = "0${ifile}" else set num = "${ifile}" endif set mssfile = "${mss_basename}${num}.nc" # mss file set dskfile = "${dsk_basename}${num}.nc" # disk file set msrcp = "msrcp mss:${mssfile} $dskfile" echo " " echo " msrcp command = $msrcp" # # Execute msrcp command (comment out for trial run): # if (! -e $dskfile) then echo "n=$n of ${nfiles}: msrcp command = $msrcp" $msrcp || echo ">>> Error executing $msrcp" && exit 1 else echo "Disk file $dskfile exists: did *not* do msrcp" endif # # Set up ncks command: # set ncksfile = "${ncks_basename}${num}.nc" set ncks = "ncks -O -a -v mtime,time,year,day,f107d,f107a,hpower,ctpoten,byimf,gpi,ut,alfad2,ed2,TN,UN,VN,NE,Z $dskfile $ncksfile" echo " ncks command = $ncks" # # Execute ncks command: # $ncks || echo ">>> Error executing $ncks" && exit 2 # # Remove disk file acquired from mss (ncksfile is saved) # rm $dskfile # @ ifile++ @ n++ end # while $ifile <= $ifile