diff --git a/etc/run_fasta.sanger b/etc/run_fasta.sanger
index 89d7dc78c47b44ae6146094cc0872c05ad6085f0..c8ff0545454c470829fe51c3077cbe2ac73d58ce 100755
--- a/etc/run_fasta.sanger
+++ b/etc/run_fasta.sanger
@@ -8,16 +8,6 @@
 
 RCS_HEADER="$Header: /cvsroot/pathsoft/artemis/etc/run_fasta.sanger,v 1.8 2005/11/29 10:13:07 tjc Exp $"
 
-cleanUp()
-{
-  echo $1
-  cat $1 | while thisLine=`line`
-  do
-     rm -f $thisLine
-     done 
-     rm -f $1
-}
-
 PROG=`echo $RCS_HEADER | sed 's/.*run_\(.*\),v.*/\1/'`
 
 
@@ -295,6 +285,13 @@ if(defined @jobs100000)
 for($count = 0; $count < @bsub_jobs; $count++)
 {
   open(BSUB, "| bsub -q normal -R \"select[mem > 1] rusage[mem=1]\" -o /dev/null -e /dev/null -w \"ended($bsub_jobs[$count])\" -K -J \"$bsub_jobs[$count]\_fin\"")  or die "could not open bsub pipe  : $!";
+
+  if($count == @bsub_jobs-1)
+  {
+    print BSUB "find ${dirname} -maxdepth 1 -name \"\*out.gz\" -print | xargs zip -j ${dirname}fasta.zip\n";
+    print BSUB "find ${dirname} -maxdepth 1 -name \"\*out.gz\" -print | xargs rm -f\n";
+  }
+
   print BSUB "\"echo finished > /dev/null\" > /dev/null 2> /dev/null";
   close BSUB; # or die "--Could not submit job : $!";
 } 
@@ -426,10 +423,8 @@ sub bsub
 
   print BSUB "gzip -9f $prefix$num";
   print BSUB "\${LSB_JOBINDEX}\.out\n";
-  print BSUB "zip -j ${dirname}fasta.zip $prefix$num";
-  print BSUB "\${LSB_JOBINDEX}\.out\.gz\n";
   print BSUB "rm -f $prefix$num";
-  print BSUB "\${LSB_JOBINDEX}\.out\.gz\n";
+  print BSUB "\${LSB_JOBINDEX}\n";
     
 
  close BSUB or die "--Could not submit job : $!";
@@ -466,5 +461,4 @@ else
     run_one_prog $1 $2 $EXPANDED_DATABASE
 fi
 
-cleanUp $1
 exit 0