src/utils/qa/chain2.csh 1.10

1.10 2009/05/21 01:28:08 rhead
Changed getChromlist.csh so that it does not create a file, just prints results. Changed all of the scripts that call it to redirect output to a unique file name, and then remove only that file at the end. Added onintr command that allow for cleanup of files created if scripts are ended prematurely.
Index: src/utils/qa/chain2.csh
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/utils/qa/chain2.csh,v
retrieving revision 1.9
retrieving revision 1.10
diff -b -B -U 4 -r1.9 -r1.10
--- src/utils/qa/chain2.csh	11 Apr 2009 00:37:01 -0000	1.9
+++ src/utils/qa/chain2.csh	21 May 2009 01:28:08 -0000	1.10
@@ -10,8 +10,9 @@
 #  Runs slow processes (quick processes are in chain.csh).
 # 
 ###############################################
 
+onintr cleanup
 
 set db=""
 set split=""
 set trackname=""
@@ -46,14 +47,13 @@
 
 # -------------------------------------------------
 # get chroms from chromInfo:
 
-if ( $split == "unsplit" ) then
-  getChromlist.csh $db > /dev/null
-else
-  getChromlist.csh $db
-endif
+getChromlist.csh $db > $db.chromlist$$
 
+if ( $split != "unsplit" ) then
+  cat $db.chromlist$$
+endif
 
 
 # ------------------------------------------------
 # featureBits
@@ -76,9 +76,9 @@
 rm -f $db.$track.offEnd
 if ( $split == "unsplit" ) then
   checkOffend.csh $db $trackname
 else
-  foreach chrom (`cat $db.chromlist`)
+  foreach chrom (`cat $db.chromlist$$`)
     # echo " chrom: $chrom"
     # echo " chrom_track:  ${chrom}_$track"
     hgsql -N -e "SELECT chromInfo.chrom, chromInfo.size, \
         chromInfo.size - MAX(${chrom}_$track.tEnd) \
@@ -105,9 +105,9 @@
   echo "expect zero for $db.query.size"
 else
 # not really needed and too complicated here.
 # the chances of this being broken are very small
-#   foreach chrom (`cat $db.chromlist`)
+#   foreach chrom (`cat $db.chromlist$$`)
 #     hgsql -N -e "SELECT DISTINCT qSize, qName FROM ${chrom}_chain$Org \
 #       GROUP by qSize" $db | sort -nr > ${chrom}.query.size
 #     commTrio.csh ${chrom}.query.size $otherDb.size   
 #   end
@@ -122,18 +122,18 @@
   echo "*~*~*~*~*~*~*~*~*~*~*~*~*~*"
   echo
   echo "checking that all chroms (scaffolds) have chains in chain table"
   hgsql -N -e "SELECT DISTINCT(tName) FROM $track" $db | sort > $db.$track.chroms
-  commTrio.csh $db.chromlist $db.$track.chroms
-  if ( `wc -l $db.chromlist.Only | awk '{print $1}'` > 0 ) then
+  commTrio.csh $db.chromlist$$ $db.$track.chroms
+  if ( `wc -l $db.chromlist$$.Only | awk '{print $1}'` > 0 ) then
     # some chroms have not chains.  display links.
     # get multiz info for link
     set multiz=`hgsql -N -e "SHOW TABLES LIKE 'multiz%'" $db | head -1`
     echo "these have no chains:"
     if ( $multiz != "" ) then
       set multiz="&${multiz}=pack"
     endif
-    foreach seq ( `head -3 $db.chromlist.Only` )
+    foreach seq ( `head -3 $db.chromlist$$.Only` )
       echo "http://genome-test.cse.ucsc.edu/cgi-bin/hgTracks?db=$db&position=$seq&chain$Org=pack$multiz"
     end
     echo "get some DNA from these and see how it blats on $otherDb"
   else
@@ -165,9 +165,9 @@
   if ($var3 != 0) then
     echo "${track} has $var3 records with tStart >= tEnd"
   endif
 else
-  foreach chrom (`cat $db.chromlist`)
+  foreach chrom (`cat $db.chromlist$$`)
     set var3=`hgsql -N -e "SELECT COUNT(*) FROM ${chrom}_${track} \
        WHERE tStart >= tEnd" $db`
     if ($var3 != 0) then
       echo "${chrom}_${track} has $var3 records with tStart >= tEnd"
@@ -184,4 +184,6 @@
 # -------------------------------------------------
 
 echo
 echo "the end."
+cleanup:
+rm -f $db.chromlist$$