#!/bin/bash
if [[ $# -lt "1" ]];then
cat<<ENDOFUSAGE
USAGE:
 ${0} sourceFolder destinationFolder
 ${0} -s "/exact/path/to/source/Folder" destinationFolder
 
DESCRIPTION:
 This script modifies Doris Result Files (*.res) and Doris Input Files
 (*.drs) by changing locations of the output files to their current locations. 
 It is a mere string replacement utility. It does not check for errors.
 Each modified file is backed up with a .bck suffix (i.e *.res.bck) 
 
 -s: option is used to update *.res files that are already moved to their
     destination, i.e. scp'ed from a different computer. With this option
     ${0} only tries to update files without actually moving anything. 
 
EXAMPLES:
 ${0} -s '/data/batu/adore_MexicoCity2/process/3DKalman/i12s' '/home/bosmanoglu/des3/kalman/3D/data'

ENDOFUSAGE
exit 1
fi

rm -rf temporary.file

if [[ ${1} == "-s" ]];then
	sourceFolder=${2}
	destinationFolder=${3}
else
	sourceFolder=${1}
	destinationFolder=${2}
	echo "Moving Files"
	mv ${sourceFolder} ${destinationFolder}
fi
echo "Source Folder: ${sourceFolder}"
echo "Destination F: ${destinationFolder}"

find ${destinationFolder} -name *.res > temporary.file
find ${destinationFolder} -name *.drs >> temporary.file
for file in `cat temporary.file`
do
	sed "s@${sourceFolder}@${destinationFolder}@g" ${file} > ${file}.new
	mv ${file} ${file}.bck
	mv ${file}.new ${file}
done	

rm -rf temporary.file
echo "All done"
exit 0	
