Subversion Repositories wimsdev

Rev

Rev 13024 | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. #! /bin/sh
  2.  
  3. cd $w_wims_home/$w_wims_sesdir
  4. sdir=`pwd`
  5. cldir=$w_wims_home/log/classes/$w_wims_class
  6.  
  7. rm -Rf getfile/class 2>/dev/null
  8. mkdir -p getfile/class
  9. cd $cldir
  10. dirs=`ls -d version $w_dirs 2>/dev/null`
  11. if [ ! -z "$dirs" ]; then
  12.   cp -pRL $dirs $sdir/getfile/class
  13. fi
  14. ##if superclass exists
  15. superdir=$w_wims_home/log/classes/$w_class_superclass
  16. if [ -n "$w_class_superclass" ]; then
  17.   cd $superdir/.users
  18.   l=`grep user_participate=.*$w_tmpnum_class * | cut -d":" -f1 `;
  19.   for special in .users photoboard; do
  20.     lp=`echo "$w_dirs" | grep $special`;
  21.     if [ "$lp" ]; then
  22.       cd $superdir
  23.       sdirs=`ls -d $special 2>/dev/null`
  24.       if [ "$sdirs" = "$special" ] ; then
  25.         mkdir -p $sdir/getfile/class/$special 2>/dev/null
  26.         cd $superdir/$special;
  27.         for f in $l; do
  28.           if [ -e $f ]; then
  29.             cp $f $sdir/getfile/class/$special/;
  30.           fi
  31.         done
  32.       fi
  33.     fi
  34.   done
  35. fi
  36. # end superclass
  37.  
  38. cd $sdir/getfile
  39. echo $w_wims_class >class/serial
  40.  
  41. if [ $w_format = zip ]; then
  42.   rm -f class.zip 2>/dev/null
  43.   zip -r class.zip class >/dev/null
  44.   # when class.zip exceed filesystem limit, no zip is created
  45.   # but it returns nothing on stderr
  46. fi
  47.  
  48. if [ $w_format = tgz ] || [ $w_format = tar.gz ]; then
  49.   tar -czf class.$w_format class >/dev/null
  50.   # when class.tgz exceed filesystem limit, a truncated archive is created
  51.   # and it returns "gzip: stdout: File too large" on stderr
  52. fi
  53.  
  54. ls -l class.$w_format | awk '{print $5}'
  55. mv class.$w_format $w_fname.$w_format
  56. rm -R class
  57.