/[MITgcm]/mitgcm.org/front_content/parse_emails
ViewVC logotype

Diff of /mitgcm.org/front_content/parse_emails

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.20 by jmc, Thu Oct 1 15:52:13 2009 UTC revision 1.21 by jmc, Thu Dec 3 18:03:27 2009 UTC
# Line 140  fi Line 140  fi
140    
141  for file in $all_files ; do  for file in $all_files ; do
142    
143      #  create local copy      #-- create local copy
144      test -e $TEMPDIR  &&  rm -rf $TEMPDIR      test -e $TEMPDIR  &&  rm -rf $TEMPDIR
145      mkdir $TEMPDIR      mkdir $TEMPDIR
146      RETVAL=$?      RETVAL=$?
# Line 161  for file in $all_files ; do Line 161  for file in $all_files ; do
161        continue        continue
162      fi      fi
163    
164      #  ignore multi-part messages      #-- ignore multi-part messages
165      grep "Content-Type: message/partial" $INDIR"/"$file > /dev/null 2>&1      grep "Content-Type: message/partial" $INDIR"/"$file > /dev/null 2>&1
166      RETVAL=$?      RETVAL=$?
167      if test "x$RETVAL" = x0 ; then      if test "x$RETVAL" = x0 ; then
# Line 176  for file in $all_files ; do Line 176  for file in $all_files ; do
176        continue        continue
177      fi      fi
178    
179      #  munpack      #-- munpack
180      mun=`( cd $TEMPDIR ; $MUNPACK $file | cut -d ' ' -f 1 | head -1 )`      mun=`( cd $TEMPDIR ; $MUNPACK $file | cut -d ' ' -f 1 | head -1 )`
181      RETVAL=$?      RETVAL=$?
182      if test "x$RETVAL" != x0 ; then      if test "x$RETVAL" != x0 ; then
# Line 191  for file in $all_files ; do Line 191  for file in $all_files ; do
191        continue        continue
192      fi      fi
193    
194      #  un-tar      #-- un-tar
195      ( cd $TEMPDIR ; tar -xzvf $mun > out )      #( cd $TEMPDIR ; tar -xzvf $mun > out )
196        #   to remove small files "._mydir" that some MAC OS are adding
197        #   (for each file or dir) to a tar-file, use option "--exclude=":
198        ( cd $TEMPDIR ; tar -xzvf $mun --exclude="._*" > out )
199      RETVAL=$?      RETVAL=$?
200      if test "x$RETVAL" != x0 ; then      if test "x$RETVAL" != x0 ; then
201        if test "x$ADDRERR" != x ; then        if test "x$ADDRERR" != x ; then
# Line 200  for file in $all_files ; do Line 203  for file in $all_files ; do
203          echo "tar -xzvf $mun returns error:" $RETVAL >> tmp.$$          echo "tar -xzvf $mun returns error:" $RETVAL >> tmp.$$
204          ls -l $INDIR"/"$file >> tmp.$$          ls -l $INDIR"/"$file >> tmp.$$
205          ls -l $mun >> tmp.$$          ls -l $mun >> tmp.$$
206          mail -s 'parse_emails err_3' $ADDRERR < tmp.$$          mail -s 'parse_emails err_3a' $ADDRERR < tmp.$$
207          rm -f tmp.$$          rm -f tmp.$$
208        fi        fi
209        mv -f $INDIR"/"$file $INDIR"/../fail2process/"$file        mv -f $INDIR"/"$file $INDIR"/../fail2process/"$file
210        continue        continue
211      fi      fi
212      tdir=`cat $TEMPDIR"/out" | head -1 | sed -e 's|^./||g' | cut -d '/' -f 1`      tdir=`cat $TEMPDIR"/out" | head -1 | sed -e 's|^./||g' | cut -d '/' -f 1`
213      rm -f $TEMPDIR"/out"     #tdir=`( cd $TEMPDIR ; /bin/ls -l | grep '^d' | head -1 | awk '{print $NF}' )`
214        if test -d $TEMPDIR/$tdir ; then
215          rm -f $TEMPDIR"/out"
216        else
217          if test "x$ADDRERR" != x ; then
218            echo "parsing email error" > tmp.$$
219            echo " fail to get a dir output name 'tdir=$tdir'" >> tmp.$$
220            echo " from tar file '$TEMPDIR/$mun'" >> tmp.$$
221            mail -s 'parse_emails err_3b' $ADDRERR < tmp.$$
222            rm -f tmp.$$
223          fi
224          mv -f $INDIR"/"$file $INDIR"/../fail2process/"$file
225          continue
226        fi
227    
228      #  select which Monthly Output Dir:      #-- select which Monthly Output Dir:
229      locDir=$OUTDIR      locDir=$OUTDIR
230      if test "x$monthDir" != x0 ; then      if test "x$monthDir" != x0 ; then
231        dd=`echo $tdir | sed 's/_/ /g' | awk '{ for(i=1;i<=NF;i++) print $i }'\        dd=`echo $tdir | sed 's/_/ /g' | awk '{ for(i=1;i<=NF;i++) print $i }'\
# Line 237  for file in $all_files ; do Line 253  for file in $all_files ; do
253        fi        fi
254      fi      fi
255    
256      #  copy to $locDir and rename if necessary      #-- copy to $locDir and rename if necessary
257      sdir=$tdir      sdir=$tdir
258      if test -e $locDir"/"$tdir ; then      if test -e $locDir"/"$tdir ; then
259          ad=0          ad=0
# Line 268  for file in $all_files ; do Line 284  for file in $all_files ; do
284      fi      fi
285      chmod -R a+rx $locDir"/"$sdir > /dev/null 2>&1      chmod -R a+rx $locDir"/"$sdir > /dev/null 2>&1
286    
287      #  remove the original file      #-- remove the original file
288      rm -f $INDIR"/"$file      rm -f $INDIR"/"$file
289    
290  done  done

Legend:
Removed from v.1.20  
changed lines
  Added in v.1.21

  ViewVC Help
Powered by ViewVC 1.1.22