Changeset 2600 for palm/trunk/SCRIPTS


Ignore:
Timestamp:
Nov 1, 2017 2:11:20 PM (4 years ago)
Author:
raasch
Message:

small changes concerning r2599, cycle number are now three digits wide

Location:
palm/trunk/SCRIPTS
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SCRIPTS/batch_scp

    r2261 r2600  
    2727# -----------------
    2828# $Id$
     29# cycle numbers made three digits wide
     30# host depending code completely removed
     31#
     32# 2261 2017-06-08 14:25:57Z raasch
    2933# option usecycle added, script is running under bash now,
    3034# filenames are allowed to contain arbitrary number of dots "."
     
    7882 catalog_copy=false
    7983 check=false
     84 cyclestring=""
    8085 delete=false
    8186 errfile=batch_scp.errfile.$random
     
    8388 get=false
    8489 local_host=`hostname`
    85  local_user=$USER
    8690 local_wdir=`pwd`
    8791 locat=normal
     
    9397 silent=false
    9498 transfermode=binary
    95  zyklusnr=""
    9699 typeset -i iii icycle maxcycle=0 usecycle wait=0
    97100
     
    261264
    262265
    263    # Using absolute paths for ssh on lcflow (nodes "cfd_*") as the paths of the
    264    # job scheduler have changed
    265  if [[ $(echo $local_host | cut -c1-3) = "cfd" ]]
    266  then
    267    SSH_BIN=/usr/bin/ssh
    268  else
    269    SSH_BIN=ssh
    270  fi
    271 
    272 
    273266    # PRUEFEN, OB LOKALE DATEI/LOKALES VERZEICHNIS VORHANDEN BZW. NICHT VORHANDEN
    274267 if [[ $get = false ]]
     
    326319
    327320    # VERZEICHNISLSTE DES ZIELRECHNERS ERSTELLEN
    328  if [[ $(echo $local_host | cut -c1-4) = gaia ]]
    329  then
    330     ssh $SSH_PORTOPT $local_user@gaiad "ssh $SSH_PORTOPT $1 -l $remote_user \"unset LANG; cd $3; ls -1; echo '*** list complete'\" "  > $filelist  2>&1
    331  else
    332     $SSH_BIN $SSH_PORTOPT $1 -l $remote_user "unset LANG; cd $3; ls -1; echo '*** list complete'" > $filelist  2>&1
    333  fi
     321 ssh $SSH_PORTOPT $1 -l $remote_user "unset LANG; cd $3; ls -1; echo '*** list complete'" > $filelist  2>&1
    334322 ssh_status=$?
    335323
     
    430418          fi
    431419
    432 
    433 #          text=$(echo $zeile | cut -f1 -d".")
    434 #
    435 #          if [[ "$text" = "$4" ]]
    436 #          then
    437 #             found=true
    438 #             cycle=$(echo $zeile | cut -f2 -d".")
    439 #             if [[ "$cycle" = "$text" ]]
    440 #             then
    441 #                (( icycle = 0 ))
    442 #             else
    443 #
    444 #                   # PRUEFEN, OB CYCLE EINE ZAHL IST
    445 #                (( iii = 1 ))
    446 #                character=`echo $cycle | cut -c$iii`
    447 #                character_found=false
    448 #                while [[ "$character" != ""  &&  $character_found = false ]]
    449 #                do
    450 #                   case  $character  in
    451 #                      (0|1|2|3|4|5|6|7|8|9)  true;;
    452 #                      (*)  character_found=true
    453 #                   esac
    454 #                   (( iii = iii + 1 ))
    455 #                   character=`echo $cycle | cut -c$iii`
    456 #                done
    457 #
    458 #                if [[ $character_found = false ]]
    459 #                then
    460 #                   (( icycle = $cycle ))
    461 #                fi
    462 #             fi >|$errfile 2>&1    # AUSGABE FEHLER AUF ERRFILE WENN CYCLE NICHTNUMERISCH
    463 #
    464 #
    465 #                # INFORMATIVE AUSGABE, WENN DATEI NICHTNUMERISCHE EXTENSION HAT
    466 #                # if [[ $(cat $errfile | grep -c "bad number") != 0 ]]
    467 #             if [[ $character_found = true ]]
    468 #             then
    469 #                if [[ $cycle != "$5" ]]
    470 #                then
    471 #                   printf "  +++ file \"$text\" has non-numerical extension \".$cycle\" \n"
    472 #                   locat=file; exit
    473 #                else
    474 #                   if [[ $silent = false ]]
    475 #                   then
    476 #                      printf "  >>> file \"$text\" has non-numerical extension \".$cycle\" \n"
    477 #                   fi
    478 #                fi
    479 #             fi
    480 
    481              if (( icycle > maxcycle ))
    482              then
    483                 (( maxcycle = icycle ))
    484              fi
    485 #          fi
     420          if (( icycle > maxcycle ))
     421          then
     422             (( maxcycle = icycle ))
     423
     424                 # FOR COMPATIBILITY REASONS WITH OLDER VERSIONS
     425                 # CHECK IF CYCLE NUMBER CONTAINS LEADING ZEROS
     426              if [[ $(echo $cycle | cut -c1) = 0 ]]
     427              then
     428                 leading_zero=true
     429              else
     430                 leading_zero=false
     431              fi
     432          fi
    486433
    487434       else
     
    504451          then
    505452             (( maxcycle = maxcycle + 1 ))
     453
    506454                # TRY TO USE FIXED CYCLE NUMBER, IF GIVEN AS OPTION
    507455             if [[ "$usecycle" != "" ]]
     
    514462                fi
    515463             fi
    516              zyklusnr=".$maxcycle"
     464             cyclestring=`printf ".%03d" $maxcycle`
    517465          else
    518466             if (( maxcycle == 0 ))
    519467             then
    520                 zyklusnr=""
     468                cyclestring=""
    521469             else
    522                 zyklusnr=".$maxcycle"
     470                cyclestring=`printf ".%03d" $maxcycle`
    523471             fi
    524472          fi
     
    536484          if (( maxcycle == 0 ))
    537485          then
    538              zyklusnr=""
     486             cyclestring=""
    539487          else
    540              zyklusnr=".$maxcycle"
     488
     489                # MAKE CYCLE NUMBER THREE DIGITS WIDE
     490             if [[ $leading_zero = true ]]
     491             then
     492                cyclestring=`printf ".%03d" $maxcycle`
     493             else
     494                cyclestring=.$maxcycle
     495             fi
    541496             (( maxcycle = 0 ))
    542497          fi
    543498       else
    544           zyklusnr=""
     499          cyclestring=""
    545500       fi
    546501    fi
     
    551506    then
    552507       (( maxcycle = usecycle ))
    553        zyklusnr=".$usecycle"
     508       cyclestring=`printf ".%03d" $usecycle`
    554509    else
    555        zyklusnr=""
     510       cyclestring=""
    556511    fi
    557512
     
    571526 if [[ $make_catalog = force ]]
    572527 then
    573     zyklusnr=""
     528    cyclestring=""
    574529    (( maxcycle = 0 ))
    575530 fi
     
    580535 if [[ $print_local_filename = true ]]
    581536 then
    582     printf "$4$zyklusnr\n"
     537    printf "$4$cyclestring\n"
    583538    rm -r $filelist
    584539    exit
     
    591546 if [[ "$5" != ""  &&  $get = false ]]
    592547 then
    593     zyklusnr=${zyklusnr}.$5
     548    cyclestring=${cyclestring}.$5
    594549 fi
    595550
     
    599554 if [[ $catalog_copy = true  &&  $get = true ]]
    600555 then
     556
    601557    rm -rf $filelist
    602     if [[ $(echo $local_host | cut -c1-4) = gaia ]]
    603     then
    604        ssh $SSH_PORTOPT $local_user@gaiad "ssh $1 -l $remote_user \"cd $3\" " > $filelist
    605     else
    606        $SSH_BIN $SSH_PORTOPT $1 -l $remote_user "cd $3" > $filelist
    607     fi
     558    ssh $SSH_PORTOPT $1 -l $remote_user "cd $3" > $filelist
     559
    608560    if [[ $? != 0 ]]
    609561    then
     
    616568       locat=directory; exit
    617569    fi
     570
    618571 fi
    619572
     
    630583
    631584
    632     # Auf IBM-Rechnern (HLRN) Tilde aus Katalognamen entfernen, da scp
    633     # diese nicht versteht
    634585 catalog_name=$3
    635  if [[ $(hostname | cut -c1-4) = hreg  ||  $(hostname | cut -c1-4) = breg ]]
    636  then
    637     catalog_name=${catalog_name#"~/"}
    638     catalog_name=${catalog_name#"~"}
    639  fi
    640586 [[ "$catalog_name" != "" ]]  &&  catalog_name=${catalog_name}/
    641587
     
    648594       if [[ $append = false ]]
    649595       then
    650           if [[ $(echo $local_host | cut -c1-2) = cs ]]
    651           then
    652              if [[ $catalog_copy = false ]]
    653              then
    654                 scp $PORTOPT -p -q -v $2 $remote_user@$1:$catalog_name$4$zyklusnr
    655              else
    656                 scp $PORTOPT -p -r -q -v $2 $remote_user@$1:$catalog_name$4$zyklusnr
    657              fi
    658           elif [[ $(echo $local_host | cut -c1-4) = gaia ]]
    659           then
    660              if [[ $catalog_copy = false ]]
    661              then
    662                 ssh $SSH_PORTOPT $local_user@gaiad "cd $local_wdir; scp $PORTOPT -p $2 $remote_user@$1:$catalog_name$4$zyklusnr"  > /dev/null
    663              else
    664                 ssh $SSH_PORTOPT $local_user@gaiad "cd $local_wdir; scp $PORTOPT -p -r $2 $remote_user@$1:$catalog_name$4$zyklusnr"  > /dev/null
    665              fi
     596
     597          if [[ $catalog_copy = false ]]
     598          then
     599             scp $PORTOPT -p $2 $remote_user@$1:$catalog_name$4$cyclestring  > /dev/null
    666600          else
    667              if [[ $catalog_copy = false ]]
    668              then
    669                 scp $PORTOPT -p $2 $remote_user@$1:$catalog_name$4$zyklusnr  > /dev/null
    670              else
    671                 scp $PORTOPT -p -r $2 $remote_user@$1:$catalog_name$4$zyklusnr  > /dev/null
    672              fi
     601             scp $PORTOPT -p -r $2 $remote_user@$1:$catalog_name$4$cyclestring  > /dev/null
    673602          fi
    674603          scp_status=$?
     
    681610             local_size=`echo $local_size | cut -d" " -f5`
    682611
    683              if  [[ $(echo $local_host | cut -c1-4) = gaia ]]
    684              then
    685                 remote_size=`ssh $SSH_PORTOPT $local_user@gaiad "ssh $SSH_PORTOPT $1 -l $remote_user \"ls -al $catalog_name$4$zyklusnr\" "`
    686              else
    687                 remote_size=`$SSH_BIN $SSH_PORTOPT $1 -l $remote_user "ls -al $catalog_name$4$zyklusnr"`
    688              fi
     612             remote_size=`ssh $SSH_PORTOPT $1 -l $remote_user "ls -al $catalog_name$4$cyclestring"`
    689613             remote_size=`echo $remote_size | cut -d" " -f5`
    690614
     
    697621             fi
    698622          fi
    699        else
    700           if [[ $(echo $local_host | cut -c1-4) = gaia ]]
    701           then
    702              ssh $SSH_PORTOPT $local_user@gaiad "cd $local_wdir; scp $PORTOPT -p $2 $remote_user@$1:${catalog_name}batch_scp_append_file.$random"  > /dev/null
    703           else
    704              scp $PORTOPT -p $2 $remote_user@$1:${catalog_name}batch_scp_append_file.$random  > /dev/null
    705           fi
     623
     624       else
     625
     626          scp $PORTOPT -p $2 $remote_user@$1:${catalog_name}batch_scp_append_file.$random  > /dev/null
     627
    706628          if [[ $? != 0 ]]
    707629          then
     
    711633             local_size=`echo $local_size | cut -d" " -f5`
    712634
    713              if  [[ $(echo $local_host | cut -c1-4) = gaia ]]
    714              then
    715                 remote_size=`ssh $SSH_PORTOPT $local_user@gaiad "ssh $SSH_PORTOPT $1 -l $remote_user \"ls -al ${catalog_name}batch_scp_append_file.$random\" "`
    716              else
    717                 remote_size=`$SSH_BIN $SSH_PORTOPT $1 -l $remote_user "ls -al ${catalog_name}batch_scp_append_file.$random"`
    718              fi
     635             remote_size=`ssh $SSH_PORTOPT $1 -l $remote_user "ls -al ${catalog_name}batch_scp_append_file.$random"`
    719636             remote_size=`echo $remote_size | cut -d" " -f5`
    720637
     
    730647          rm  $filelist
    731648
    732           if  [[ $(echo $local_host | cut -c1-4) = gaia ]]
    733           then
    734              ssh $SSH_PORTOPT $local_user@gaiad "ssh $SSH_PORTOPT $1 -l $remote_user \"cd $3; cat batch_scp_append_file.$random >> $4$zyklusnr; rm batch_scp_append_file.$random; echo '*** append complete'\" " > $filelist
    735           else
    736              $SSH_BIN $SSH_PORTOPT $1 -l $remote_user "cd $3; cat batch_scp_append_file.$random >> $4$zyklusnr; rm batch_scp_append_file.$random; echo '*** append complete'" > $filelist
    737           fi
     649          ssh $SSH_PORTOPT $1 -l $remote_user "cd $3; cat batch_scp_append_file.$random >> $4$cyclestring; rm batch_scp_append_file.$random; echo '*** append complete'" > $filelist
     650
    738651          if [[ $? != 0 ]]
    739652          then
     
    749662          fi
    750663       fi
     664
    751665    else
    752        if  [[ $(echo $local_host | cut -c1-4) = gaia ]]
    753        then
    754           ssh $SSH_PORTOPT $local_user@gaiad "ssh $1 -l $remote_user \"mkdir -p $3\" "
    755        else
    756           $SSH_BIN $SSH_PORTOPT $1 -l $remote_user "mkdir -p $3"
    757        fi
     666
     667       ssh $SSH_PORTOPT $1 -l $remote_user "mkdir -p $3"
     668
    758669       if [[ $? != 0 ]]
    759670       then
    760671          locat=ssh_failed_4; exit
    761672       fi
    762        if  [[ $(echo $local_host | cut -c1-4) = gaia ]]
    763        then
    764           ssh $SSH_PORTOPT $local_user@gaiad "cd $local_wdir; scp $PORTOPT -p $2 $remote_user@$1:$catalog_name$4$zyklusnr"  > /dev/null
    765        else
    766           scp $PORTOPT -p $2 $remote_user@$1:$catalog_name$4$zyklusnr  > /dev/null
    767        fi
     673
     674       scp $PORTOPT -p $2 $remote_user@$1:$catalog_name$4$cyclestring  > /dev/null
     675
    768676       if [[ $? != 0 ]]
    769677       then
     
    784692       else
    785693
    786           if  [[ $(echo $local_host | cut -c1-4) = gaia ]]
    787           then
    788              ssh $SSH_PORTOPT $local_user@gaiad "cd $local_wdir; scp $PORTOPT -p $remote_user@$1:$catalog_name$4$zyklusnr $2"  > /dev/null
    789           else
    790              scp $PORTOPT -p $remote_user@$1:$catalog_name$4$zyklusnr $2  > /dev/null
    791           fi
     694          scp $PORTOPT -p $remote_user@$1:$catalog_name$4$cyclestring $2  > /dev/null
     695
    792696          if [[ $? != 0 ]]
    793697          then
     
    796700
    797701       fi
     702
    798703    else
    799704
     
    801706       locat=unavailable_feature; exit
    802707
    803 #       ftp -i $1 << %END%  > /dev/null
    804 #$transfermode
    805 #cd $3
    806 #mget *
    807 #quit
    808 #%END%
    809     fi
     708    fi
     709
    810710 fi
    811711
     
    837737          if [[ $catalog_copy = false ]]
    838738          then
    839              printf "      new file has cycle number $maxcycle \n"
     739             printf "      new file has cycle number .%03d \n" $maxcycle
    840740          else
    841              printf "      new catalog has cycle number $maxcycle \n"
    842           fi
    843        else
    844           printf "      append to cycle number $maxcycle \n"
     741             printf "      new catalog has cycle number .%03d \n" $maxcycle
     742          fi
     743       else
     744          printf "      append to cycle number .%03d \n" $maxcycle
    845745       fi
    846746    fi
  • palm/trunk/SCRIPTS/palmrun

    r2566 r2600  
    2727# -----------------
    2828# $Id$
     29# cycle numbers are made three digits wide
     30#
     31# 2566 2017-10-20 08:50:47Z raasch
    2932# execute command for combine_plot_fields added
    3033# "TEMPDIR" renamed "tempdir"
     
    10171020           then
    10181021              (( maxcycle = icycle ))
     1022
     1023                 # FOR COMPATIBILITY REASONS WITH OLDER VERSIONS
     1024                 # CHECK IF CYCLE NUMBER CONTAINS LEADING ZEROS
     1025              if [[ $(echo $cycle | cut -c1) = 0 ]]
     1026              then
     1027                 leading_zero=true
     1028              else
     1029                 leading_zero=false
     1030              fi
    10191031           fi
    10201032
     
    10221034       rm filelist
    10231035
     1036          # MAKE CYCLE NUMBER THREE DIGITS WIDE
     1037       if [[ $leading_zero = true ]]
     1038       then
     1039          cyclestring=`printf "%03d" $maxcycle`
     1040       else
     1041          cyclestring=$maxcycle
     1042       fi
     1043
    10241044          # APPEND CYCLE NUMBER TO FILENAME
    10251045       if (( maxcycle > 0 ))
     
    10271047          if [[ "${extin[$i]}" != " "  &&   "${extin[$i]}" != "" ]]
    10281048          then
    1029              filename=${filename}.$maxcycle.${extin[$i]}
     1049             filename=${filename}.$cyclestring.${extin[$i]}
    10301050          else
    1031              filename=${filename}.$maxcycle
     1051             filename=${filename}.$cyclestring
    10321052          fi
    10331053       else
     
    10451065          if [[ "${actionin[$i]}" = di ]]
    10461066          then
    1047              frelin[$i]=${endin[$i]}.$maxcycle
     1067             frelin[$i]=${endin[$i]}.$cyclestring
    10481068          else
    1049              frelin[$i]=${fname}${endin[$i]}.$maxcycle
     1069             frelin[$i]=${fname}${endin[$i]}.$cyclestring
    10501070          fi
    10511071       else
     
    11611181       if [[ "${actionout[$i]}" != a ]]
    11621182       then
     1183          cyclestring=`printf "%03d" $maxcycle`
    11631184          if (( maxcycle > 0 ))
    11641185          then
    1165              filename_tmp=${filename}.$maxcycle
     1186             filename_tmp=${filename}.$cyclestring
    11661187             if  cat /dev/null > $filename_tmp
    11671188             then
     
    20532074          if (( cycnum[$i] > 0 ))
    20542075          then
    2055              pathout[$i]=${pathout[$i]}.${cycnum[$i]}
     2076             cyclestring=`printf "%03d" ${cycnum[$i]}`
     2077             pathout[$i]=${pathout[$i]}.$cyclestring
    20562078          fi
    20572079       fi           
Note: See TracChangeset for help on using the changeset viewer.