#!/bin/sh # # ======================================================================== # # * # * This file is part of MARS, the MAGIC Analysis and Reconstruction # * Software. It is distributed to you in the hope that it can be a useful # * and timesaving tool in analysing Data of imaging Cerenkov telescopes. # * It is distributed WITHOUT ANY WARRANTY. # * # * Permission to use, copy, modify and distribute this software and its # * documentation for any purpose is hereby granted without fee, # * provided that the above copyright notice appear in all copies and # * that both that copyright notice and this permission notice appear # * in supporting documentation. It is provided "as is" without express # * or implied warranty. # * # # # Author(s): Daniela Dorner 08/2004 # Author(s): Stefan Ruegamer 02/2007 # # Copyright: MAGIC Software Development, 2000-2008 # # # ======================================================================== # # This script is moving the rawfiles from the directory # /magic/datacenter/fromtape/rawdata to the structure # /magic/data/rawfiles/YYYY/MM/DD # # As the data transfer is at the moment not working via .finished files, # you have to use the script movingrawfiles_OK for moving these data # source `dirname $0`/sourcefile printprocesslog "INFO starting $0" program=movingrawfiles set -C umask 0002 scriptlog=$runlogpath/$program-$datetime.log date >> $scriptlog 2>&1 # check whether script is already running lockfile=$lockpath/lock-$program.txt checklock >> $scriptlog 2>&1 # change permission for files ssh tape@dc07 chmod -R g+w /magic/datacenter/fromtape/rawdata/* >> $scriptlog 2>&1 printprocesslog "INFO moving directories from muxdata to rawdata" # find directories which have to be copied days=`find /magic/datacenter/fromtape/muxdata/* -type d` if [ ! "$days" == "" ] then # move directories to the tapedirectory mv -v $days /magic/datacenter/fromtape/rawdata/ >> $scriptlog 2>&1 fi # find rawfiles rawfiles=`find /magic/{datacenter,data/rawfiles}/fromtape/*data/ -regextype posix-egrep -regex '.*/20[01][0-9]{5}_(M[12]_)?[0-9]{8}(\.[0-9]{3})?_.*.raw' -type f` if [ "$rawfiles" == "" ] then echo "no files to move -> exit" >> $scriptlog 2>&1 finish >> $scriptlog 2>&1 fi printprocesslog "INFO moving rawfiles to $datapath/rawfiles" for rawfile in $rawfiles do # workaround for rawfiles with wrong timing # newrawfile=`echo $rawfile | sed -e 's/center\/fromtape\/rawdata/\/rawfiles-wrong-timing/g' -e 's/_/\//1' -e 's/_/\//1'` path=`dirname $rawfile | cut -d/ -f3` if [ "$path" == "datacenter" ] then newrawfile=`echo $rawfile | sed -e 's/center\/fromtape\/rawdata/\/rawfiles/g' -e 's/_/\//1' -e 's/_/\//1'` elif [ "$path" == "data" ] then newrawfile=`echo $rawfile | sed -e 's/\/fromtape\/muxdata//g' -e 's/_/\//1' -e 's/_/\//1'` else echo "ERROR something is wrong with the path of file $rawfile -> continue" >> $scriptlog 2>&1 printprocesslog "ERROR moving rawfile $rawfile failed" continue fi newdir=`dirname $newrawfile` makedir $newdir >> $scriptlog 2>&1 mv -v $rawfile $newrawfile >> $scriptlog 2>&1 done rmdir -v /magic/{datacenter,data/rawfiles}/fromtape/*data/* >> $scriptlog 2>&1 printprocesslog "INFO launching filesondisk" echo "launching filesondisk" >> $scriptlog 2>&1 $scriptspath/filesondisk & finish >> $scriptlog 2>&1