source: BAORadio/AmasNancay/trunk/mkarchive.sh @ 606

Last change on this file since 606 was 601, checked in by campagne, 13 years ago

add NGC4383 src (jec)

  • Property svn:executable set to *
File size: 4.2 KB
Line 
1#!/bin/sh
2#make an archive of the processing
3DATE=/bin/date
4GREP=/bin/grep
5AWK=/bin/awk
6ECHO=/bin/echo
7WC=/usr/bin/wc
8CAT=/bin/cat
9PRINTF=/usr/bin/printf
10FIND=/usr/bin/find
11MKDIR=/bin/mkdir
12XARGS=/usr/bin/xargs
13SORT=/bin/sort
14RM=/bin/rm
15TR=/usr/bin/tr
16CP=/bin/cp
17LS=/bin/ls
18CHMOD=/bin/chmod
19
20DefaultIFS=$' \t\n'
21IFS=$DefaultIFS
22
23#set Irods environment   
24. /usr/local/shared/bin/irods_env.sh -noverbose
25
26scriptName="`basename $0`"
27$ECHO "Processing script ${scriptName} at `date`"
28#which source to analyse
29
30#Process cmd line args: the -src option is mandatory (source name as Abell85)
31sourceRadio=
32dateSelected=
33prependTag=""
34appendTag=""
35simulationMode=Off
36mvgain=No
37while [ $# -gt 0 ]
38  do
39  case "$1" in
40      -src)  sourceRadio=$2;    shift;;
41      -date) dateSelected=$2;     shift;;
42      -ppTag) prependTag=$2; shift;;
43      -apTag) appendTag=$2; shift;;
44      -sim)  simulationMode=On;;
45      -all)  mvgain=Yes;;
46      -h)
47      echo >&2 \
48          "usage: $0 -src souce -date YYYYMMDD -ppTag <tag> -apTag <tag>  [-sim to trig simulation mode]"
49      exit 1;;
50      *)  break;;       # terminate while loop
51  esac
52  shift
53done
54
55
56if [ ${simulationMode} = "On" ]; then
57    $ECHO "INFO ${scriptName} running in SIMUL mode"
58fi
59
60if [ "<${sourceRadio}>" = "<>" ]; then
61    $ECHO "FATAL: You have forgotten to select the source option (-src)"
62    exit 1
63fi
64
65if [ "<${prependTag}>" = "<>" -a "<${appendTag}>" = "<>"  ]; then
66    $ECHO "FATAL: choose either a prepend Tag or a append Tag"
67    exit
68fi
69
70
71case ${sourceRadio} in
72    Abell85) $ECHO "INFO (${scriptName}): process ${sourceRadio}";;
73    Abell2440) $ECHO "INFO (${scriptName}): process ${sourceRadio}";;
74    Abell1205) $ECHO "INFO (${scriptName}): process ${sourceRadio}";;
75    NGC4383) $ECHO "INFO (${scriptName}): process ${sourceRadio}";;
76    *) ECHO "FATAL (${scriptName}): process ${sourceRadio} not yet foreseen"
77    exit 1;;
78esac
79
80srclower=`${ECHO} ${sourceRadio} | ${TR} "[:upper:]" "[:lower:]" `
81
82#Path to public backupable path
83publicpath="/afs/in2p3.fr/home/c/campagne/public"
84
85
86#temporary files to synchronize scripts
87tmppublicpath=${TMPPUBLICPATH}
88#wakeup the NFS disk
89$LS -l ${tmppublicpath} > /dev/null
90
91#Path where the job will do temporary IO
92. ${SCRIPTPATH}/set_iojobpath.sh
93iojobpath=$(set_iojobpath)
94cd ${iojobpath}
95
96localpath="${sourceRadio}"
97$MKDIR -p ./${localpath}
98cd ./${localpath}
99
100
101#Path of the utility scripts
102scriptpath=${SCRIPTPATH}
103
104OUT1=${publicpath}/baodaqstatus-current.txt
105if [ ! -e ${OUT1}  -o ! -r ${OUT1} ]; then
106    $ECHO "FATAL (${scriptName}): ${OUT1} has a problem"
107    exit 1
108fi
109
110
111
112$ECHO "You have selected sourceRadio = ${sourceRadio} [date = ${dateSelected}]"
113tableau=( `$GREP -i "${dateSelected}${srclower}" ${OUT1} | $AWK '( NF==4 ) { print $2 }' ` )
114IFS='
115' 
116tableau=( $( $PRINTF "%s\n" "${tableau[@]}" | $AWK 'x[$0]++ == 0' ) )
117IFS=$DefaultIFS
118
119$ECHO "We are in directory `pwd`"
120
121for i in ${tableau[@]}
122  do
123#
124 
125  $ECHO "DEBUG: (${scriptName}) irods root dir $i"
126
127 
128
129  #make a new archive directory
130  archiveDir=${prependTag}Arch${appendTag}
131
132  archExist=`ils ${i} 2>&1 | $GREP -i ".*C-.*${archiveDir}"| $WC -l`
133  if [ ${archExist} -gt 0 ]; then
134      $ECHO "FATAL: ${archiveDir} already exit in ${i}"
135      exit 1
136  fi
137
138  imkdir -v ${i}/${archiveDir}
139 
140  #Move the Off and On directory
141  imv -v ${i}/Off ${i}/${archiveDir}/Off
142  imv -v ${i}/On ${i}/${archiveDir}/On
143 
144  #recreate On and Off directories
145  imkdir -v ${i}/Off
146  imkdir -v ${i}/On
147 
148  #mv the fichiers de calibrations BAO
149  calibfiles=( `ils ${i} 2>&1 | $GREP -i "calib_.*\.txt" ` )
150  IFS='
151' 
152  calibfiles=( $( $PRINTF "%s\n" "${calibfiles[@]}" | $AWK 'x[$0]++ == 0' )  )
153  IFS=$DefaultIFS
154
155  for j in ${calibfiles[@]}
156    do
157    file=`$ECHO $j`
158    imv -v ${i}/${file} ${i}/${archiveDir}/${file}
159  done
160 
161  #mv the ppf files
162  ppffiles=( `ils ${i} 2>&1 | $GREP -i ".*\.ppf" ` )
163  IFS='
164' 
165  ppffiles=( $( $PRINTF "%s\n" "${ppffiles[@]}" | $AWK 'x[$0]++ == 0' )  )
166  IFS=$DefaultIFS
167
168  for j in ${ppffiles[@]}
169    do
170    file=`$ECHO $j`
171    imv -v ${i}/${file} ${i}/${archiveDir}/${file}
172  done
173
174  #save the gain file
175  gainfile=`ils ${i} 2>&1 | $GREP -i "gain.*\.fits"`
176  file=`$ECHO ${gainfile}`
177  if [ "<${mvgain}>" = "<No>" ]; then
178      icp -v ${i}/${file} ${i}/${archiveDir}/${file}
179  else
180      imv -v ${i}/${file} ${i}/${archiveDir}/${file}
181  fi
182
183done
184
185exit 0
Note: See TracBrowser for help on using the repository browser.