copy files: fix DB update

This commit is contained in:
Vincent Riquer 2013-04-23 11:23:04 +02:00
parent 4eb7d33250
commit 61fcdf4ba4

View File

@ -1,5 +1,6 @@
#!/bin/bash #!/bin/bash
copyFiles_action() { copyFiles_action() {
echo -n "Copying files... "
echo ' echo '
SELECT SELECT
source_files.filename, source_files.filename,
@ -27,9 +28,11 @@ copyFiles_action() {
read -u4 line read -u4 line
done done
echo 'BEGIN TRANSACTION;' >&3
for copyfile in "${copyfiles[@]}" for copyfile in "${copyfiles[@]}"
do do
sourcefilename=${copyfile%%|*} sourcefilename=${copyfile%%|*}
sourcedir=${sourcefilename%/*}
rest="${copyfile#*|}|" rest="${copyfile#*|}|"
lastchange=${rest%%|*} lastchange=${rest%%|*}
rest=${rest#*|} rest=${rest#*|}
@ -37,7 +40,6 @@ copyFiles_action() {
rest=${rest#*|} rest=${rest#*|}
destfileid=${rest%%|*} destfileid=${rest%%|*}
rest=${rest#*|} rest=${rest#*|}
sourcedir=${sourcefilename%/*}
echo 'SELECT IFNULL( ( echo 'SELECT IFNULL( (
SELECT destination_files.filename SELECT destination_files.filename
FROM destination_files FROM destination_files
@ -65,13 +67,17 @@ copyFiles_action() {
Update destination_files \ Update destination_files \
filename "$destdir/${sourcefilename##*/}"\ filename "$destdir/${sourcefilename##*/}"\
rename_pattern "${destinationrenamepath[$destination]}/${destinationrename[$destination]}:${destinationfat32compat["$destination"]}"\ rename_pattern "${destinationrenamepath[$destination]}/${destinationrename[$destination]}:${destinationfat32compat["$destination"]}"\
last_change $lastchange \
<<-EOWhere <<-EOWhere
id = $destfileid id = $destfileid
last_change = $lastchange
EOWhere EOWhere
progressSpin (( done++ ))
fi fi
fi fi
(( count++ ))
printf '\b\b\b\b%3i%%' $(( (count * 100) / ${#copyfiles[@]} ))
done done
unset count echo 'COMMIT;' >&3
echo -e "\rCopied ${done:-0} of $count files.\033[K"
unset count done
} }