source: BAORadio/AmasNancay/v5/mkarchive.sh@ 616

Last change on this file since 616 was 581, checked in by campagne, 14 years ago

add option to mv the gain fits file too (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 *) ECHO "FATAL (${scriptName}): process ${sourceRadio} not yet foreseen"
76 exit 1;;
77esac
78
79srclower=`${ECHO} ${sourceRadio} | ${TR} "[:upper:]" "[:lower:]" `
80
81#Path to public backupable path
82publicpath="/afs/in2p3.fr/home/c/campagne/public"
83
84
85#temporary files to synchronize scripts
86tmppublicpath=${TMPPUBLICPATH}
87#wakeup the NFS disk
88$LS -l ${tmppublicpath} > /dev/null
89
90#Path where the job will do temporary IO
91. ${SCRIPTPATH}/set_iojobpath.sh
92iojobpath=$(set_iojobpath)
93cd ${iojobpath}
94
95localpath="${sourceRadio}"
96$MKDIR -p ./${localpath}
97cd ./${localpath}
98
99
100#Path of the utility scripts
101scriptpath=${SCRIPTPATH}
102
103OUT1=${publicpath}/baodaqstatus-current.txt
104if [ ! -e ${OUT1} -o ! -r ${OUT1} ]; then
105 $ECHO "FATAL (${scriptName}): ${OUT1} has a problem"
106 exit 1
107fi
108
109
110
111$ECHO "You have selected sourceRadio = ${sourceRadio} [date = ${dateSelected}]"
112tableau=( `$GREP -i "${dateSelected}${srclower}" ${OUT1} | $AWK '( NF==4 ) { print $2 }' ` )
113IFS='
114'
115tableau=( $( $PRINTF "%s\n" "${tableau[@]}" | $AWK 'x[$0]++ == 0' ) )
116IFS=$DefaultIFS
117
118$ECHO "We are in directory `pwd`"
119
120for i in ${tableau[@]}
121 do
122#
123
124 $ECHO "DEBUG: (${scriptName}) irods root dir $i"
125
126
127
128 #make a new archive directory
129 archiveDir=${prependTag}Arch${appendTag}
130
131 archExist=`ils ${i} 2>&1 | $GREP -i ".*C-.*${archiveDir}"| $WC -l`
132 if [ ${archExist} -gt 0 ]; then
133 $ECHO "FATAL: ${archiveDir} already exit in ${i}"
134 exit 1
135 fi
136
137 imkdir -v ${i}/${archiveDir}
138
139 #Move the Off and On directory
140 imv -v ${i}/Off ${i}/${archiveDir}/Off
141 imv -v ${i}/On ${i}/${archiveDir}/On
142
143 #recreate On and Off directories
144 imkdir -v ${i}/Off
145 imkdir -v ${i}/On
146
147 #mv the fichiers de calibrations BAO
148 calibfiles=( `ils ${i} 2>&1 | $GREP -i "calib_.*\.txt" ` )
149 IFS='
150'
151 calibfiles=( $( $PRINTF "%s\n" "${calibfiles[@]}" | $AWK 'x[$0]++ == 0' ) )
152 IFS=$DefaultIFS
153
154 for j in ${calibfiles[@]}
155 do
156 file=`$ECHO $j`
157 imv -v ${i}/${file} ${i}/${archiveDir}/${file}
158 done
159
160 #mv the ppf files
161 ppffiles=( `ils ${i} 2>&1 | $GREP -i ".*\.ppf" ` )
162 IFS='
163'
164 ppffiles=( $( $PRINTF "%s\n" "${ppffiles[@]}" | $AWK 'x[$0]++ == 0' ) )
165 IFS=$DefaultIFS
166
167 for j in ${ppffiles[@]}
168 do
169 file=`$ECHO $j`
170 imv -v ${i}/${file} ${i}/${archiveDir}/${file}
171 done
172
173 #save the gain file
174 gainfile=`ils ${i} 2>&1 | $GREP -i "gain.*\.fits"`
175 file=`$ECHO ${gainfile}`
176 if [ "<${mvgain}>" = "<No>" ]; then
177 icp -v ${i}/${file} ${i}/${archiveDir}/${file}
178 else
179 imv -v ${i}/${file} ${i}/${archiveDir}/${file}
180 fi
181
182done
183
184exit 0
Note: See TracBrowser for help on using the repository browser.