source: BAORadio/AmasNancay/v4/mkarchive.sh@ 625

Last change on this file since 625 was 575, checked in by campagne, 14 years ago

introduce SCRIPTPATH environment variable (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
36while [ $# -gt 0 ]
37 do
38 case "$1" in
39 -src) sourceRadio=$2; shift;;
40 -date) dateSelected=$2; shift;;
41 -ppTag) prependTag=$2; shift;;
42 -apTag) appendTag=$2; shift;;
43 -sim) simulationMode=On;;
44 -h)
45 echo >&2 \
46 "usage: $0 -src souce -date YYYYMMDD -ppTag <tag> -apTag <tag> [-sim to trig simulation mode]"
47 exit 1;;
48 *) break;; # terminate while loop
49 esac
50 shift
51done
52
53
54if [ ${simulationMode} = "On" ]; then
55 $ECHO "INFO ${scriptName} running in SIMUL mode"
56fi
57
58if [ "<${sourceRadio}>" = "<>" ]; then
59 $ECHO "FATAL: You have forgotten to select the source option (-src)"
60 exit 1
61fi
62
63if [ "<${prependTag}>" = "<>" -a "<${appendTag}>" = "<>" ]; then
64 $ECHO "FATAL: choose either a prepend Tag or a append Tag"
65 exit
66fi
67
68
69case ${sourceRadio} in
70 Abell85) $ECHO "INFO (${scriptName}): process ${sourceRadio}";;
71 Abell2440) $ECHO "INFO (${scriptName}): process ${sourceRadio}";;
72 Abell1205) $ECHO "INFO (${scriptName}): process ${sourceRadio}";;
73 *) ECHO "FATAL (${scriptName}): process ${sourceRadio} not yet foreseen"
74 exit 1;;
75esac
76
77srclower=`${ECHO} ${sourceRadio} | ${TR} "[:upper:]" "[:lower:]" `
78
79#Path to public backupable path
80publicpath="/afs/in2p3.fr/home/c/campagne/public"
81
82
83#temporary files to synchronize scripts
84tmppublicpath=${TMPPUBLICPATH}
85#wakeup the NFS disk
86$LS -l ${tmppublicpath} > /dev/null
87
88#Path where the job will do temporary IO
89if [ ${ENVIRONMENT} = "INTERACTIVE" ]; then
90 iojobpath="/sps/baoradio/AmasNancay/JEC"
91 $MKDIR -p $iojobpath
92else
93 $ECHO "FATAL (${scriptName}): environment is ${ENVIRONMENT} not allowed"
94 exit 1
95fi
96cd ${iojobpath}
97
98localpath="${sourceRadio}"
99$MKDIR -p ./${localpath}
100cd ./${localpath}
101
102
103#Path of the utility scripts
104scriptpath=${SCRIPTPATH}
105
106OUT1=${publicpath}/baodaqstatus-current.txt
107if [ ! -e ${OUT1} -o ! -r ${OUT1} ]; then
108 $ECHO "FATAL (${scriptName}): ${OUT1} has a problem"
109 exit 1
110fi
111
112
113
114$ECHO "You have selected sourceRadio = ${sourceRadio} [date = ${dateSelected}]"
115tableau=( `$GREP -i "${dateSelected}${srclower}" ${OUT1} | $AWK '( NF==4 ) { print $2 }' ` )
116IFS='
117'
118tableau=( $( $PRINTF "%s\n" "${tableau[@]}" | $AWK 'x[$0]++ == 0' ) )
119IFS=$DefaultIFS
120
121$ECHO "We are in directory `pwd`"
122
123for i in ${tableau[@]}
124 do
125#
126
127 $ECHO "DEBUG: (${scriptName}) irods root dir $i"
128
129
130
131 #make a new archive directory
132 archiveDir=${prependTag}Arch${appendTag}
133
134 archExist=`ils ${i} 2>&1 | $GREP -i ".*C-.*${archiveDir}"| $WC -l`
135 if [ ${archExist} -gt 0 ]; then
136 $ECHO "FATAL: ${archiveDir} already exit in ${i}"
137 exit 1
138 fi
139
140 imkdir -v ${i}/${archiveDir}
141
142 #Move the Off and On directory
143 imv -v ${i}/Off ${i}/${archiveDir}/Off
144 imv -v ${i}/On ${i}/${archiveDir}/On
145
146 #recreate On and Off directories
147 imkdir -v ${i}/Off
148 imkdir -v ${i}/On
149
150 #mv the fichiers de calibrations BAO
151 calibfiles=( `ils ${i} 2>&1 | $GREP -i "calib_.*\.txt" ` )
152 IFS='
153'
154 calibfiles=( $( $PRINTF "%s\n" "${calibfiles[@]}" | $AWK 'x[$0]++ == 0' ) )
155 IFS=$DefaultIFS
156
157 for j in ${calibfiles[@]}
158 do
159 file=`$ECHO $j`
160 imv -v ${i}/${file} ${i}/${archiveDir}/${file}
161 done
162
163 #mv the ppf files
164 ppffiles=( `ils ${i} 2>&1 | $GREP -i ".*\.ppf" ` )
165 IFS='
166'
167 ppffiles=( $( $PRINTF "%s\n" "${ppffiles[@]}" | $AWK 'x[$0]++ == 0' ) )
168 IFS=$DefaultIFS
169
170 for j in ${ppffiles[@]}
171 do
172 file=`$ECHO $j`
173 imv -v ${i}/${file} ${i}/${archiveDir}/${file}
174 done
175
176 #save the gain file
177 gainfile=`ils ${i} 2>&1 | $GREP -i "gain.*\.fits"`
178 file=`$ECHO ${gainfile}`
179 icp -v ${i}/${file} ${i}/${archiveDir}/${file}
180
181done
182
183exit 0
Note: See TracBrowser for help on using the repository browser.