#!/bin/bash


# VSS
VSS="Yes"
DRIVE="c:"
#INTERNALV
declare -A VSSUUID
declare -A VSSPATH
VSSF=vssfile-$$.txt
CDRIVES=0

#Fuente de donde se van a tomar los archivos originales
ROOTSRC="/cygdrive/c/"
VSSDRIVES=(e f g)
SRC="/Datos /QBKS"
EXCL=$(pwd)/excludes.lst


function use_vss() {

echo '#### Creating VSS Snapshot for backup '
CDRIVES=0
## Create snapshots of each of the drives involved
for i in "${VSSDRIVES[@]}"; do
CDRIVES=$(( $CDRIVES + 1))
vssadmin create shadow /for=${i}: >> /tmp/${VSSF}
VSSPATH[$CDRIVES]=$(tail -n 1 /tmp/${VSSF}  |awk '{print $6}')
VSSUUID[$CDRIVES]=$(tail -n 2  /tmp/${VSSF} |head -n1 |awk '{print $4}')

done

if [ $CDRIVES -eq 0 ]; then
    echo Error in VSS CDRIVES = 0
  exit 1
 fi

#mkdir /cygdrive/${DRIVE%:}/vss-$$
cmd /c md c:\\vss
ROOTSRC="/cygdrive/c/vss"
echo ${VSSPATH[@]}
for i in `seq 1 $CDRIVES`; do
cmd /c mklink /d ${DRIVE}\\vss\\drive-${VSSDRIVES[$(($i - 1))]} ${VSSPATH[$i]}\\
done

ROOTSRC="/cygdrive/${DRIVE%:}/vss//vss-$$"

}

function cleanup() {
for i in `seq $CDRIVES`; do
cmd /c rmdir ${DRIVE}\\vss\\drive-${VSSDRIVES[$(($i - 1))]}
cmd /c vssadmin delete shadows /quiet /shadow=${VSSUUID[$i]}
done
rm -rf /cygdrive/c/vss
rm /tmp/${VSSF}
}




echo using vss
use_vss

echo Pause:
read


echo cleaning up.
cleanup
