filenames and/or tags may contain |
This commit is contained in:
parent
28b11a77ea
commit
1fa431cc5f
148
atom
148
atom
@ -144,8 +144,8 @@ removed=0
|
|||||||
read -u4 line
|
read -u4 line
|
||||||
until [[ $line == AtOM:NoMoreFiles ]]
|
until [[ $line == AtOM:NoMoreFiles ]]
|
||||||
do
|
do
|
||||||
id=${line%|*}
|
id=${line%::AtOM:SQL:Sep::*}
|
||||||
filename=${line#*|}
|
filename=${line#*::AtOM:SQL:Sep::}
|
||||||
if [ -n "$filename" ]
|
if [ -n "$filename" ]
|
||||||
then
|
then
|
||||||
if rm -f "$filename"
|
if rm -f "$filename"
|
||||||
@ -220,12 +220,12 @@ done
|
|||||||
echo 'BEGIN TRANSACTION;' >&3
|
echo 'BEGIN TRANSACTION;' >&3
|
||||||
for line in "${tagfiles[@]}"
|
for line in "${tagfiles[@]}"
|
||||||
do
|
do
|
||||||
sourcefileid=${line%%|*}
|
sourcefileid=${line%%::AtOM:SQL:Sep::*}
|
||||||
rest=${line#*|}
|
rest=${line#*::AtOM:SQL:Sep::}
|
||||||
lastchange=${rest%%|*}
|
lastchange=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
mimetype=${rest%%|*}
|
mimetype=${rest%%::AtOM:SQL:Sep::*}
|
||||||
filename=${rest#*|}
|
filename=${rest#*::AtOM:SQL:Sep::}
|
||||||
echo -en "\rTags: $((++count*100/filecount))%"
|
echo -en "\rTags: $((++count*100/filecount))%"
|
||||||
if (( count % 1000 == 0 ))
|
if (( count % 1000 == 0 ))
|
||||||
then
|
then
|
||||||
@ -376,7 +376,7 @@ echo '
|
|||||||
read -u4 line
|
read -u4 line
|
||||||
while ! [[ $line = AtOM:NoMoreFiles ]]
|
while ! [[ $line = AtOM:NoMoreFiles ]]
|
||||||
do
|
do
|
||||||
decodefiles+=("$line|")
|
decodefiles+=("$line::AtOM:SQL:Sep::")
|
||||||
read -u4 line
|
read -u4 line
|
||||||
done
|
done
|
||||||
echo -n 'Creating tasks... '
|
echo -n 'Creating tasks... '
|
||||||
@ -384,41 +384,41 @@ echo -n 'Creating tasks... '
|
|||||||
echo 'BEGIN TRANSACTION;' >&3
|
echo 'BEGIN TRANSACTION;' >&3
|
||||||
for line in "${decodefiles[@]}"
|
for line in "${decodefiles[@]}"
|
||||||
do
|
do
|
||||||
fileid=${line%%|*}
|
fileid=${line%%::AtOM:SQL:Sep::*}
|
||||||
rest=${line#*|}
|
rest=${line#*::AtOM:SQL:Sep::}
|
||||||
filename=${rest%%|*}
|
filename=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
mimetype=${rest%%|*}
|
mimetype=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
destination=${rest%%|*}
|
destination=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
destfileid=${rest%%|*}
|
destfileid=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
rate=${rest%%|*}
|
rate=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
channels=${rest%%|*}
|
channels=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
bitrate=${rest%%|*}
|
bitrate=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
genre=${rest%%|*}
|
genre=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
albumartist=${rest%%|*}
|
albumartist=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
year=${rest%%|*}
|
year=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
album=${rest%%|*}
|
album=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
disc=${rest%%|*}
|
disc=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
artist=${rest%%|*}
|
artist=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
track=${rest%%|*}
|
track=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
title=${rest%%|*}
|
title=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
composer=${rest%%|*}
|
composer=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
performer=${rest%%|*}
|
performer=${rest%%::AtOM:SQL:Sep::*}
|
||||||
unset rest
|
unset rest
|
||||||
decodeFile
|
decodeFile
|
||||||
getDestDir
|
getDestDir
|
||||||
@ -647,32 +647,32 @@ do
|
|||||||
echo -n "$destination: rename pattern changed, renaming files... "
|
echo -n "$destination: rename pattern changed, renaming files... "
|
||||||
while [[ $line != AtOM:NoMoreFiles ]]
|
while [[ $line != AtOM:NoMoreFiles ]]
|
||||||
do
|
do
|
||||||
oldfilename=${line%%|*}
|
oldfilename=${line%%::AtOM:SQL:Sep::*}
|
||||||
rest=${line#*|}'|'
|
rest=${line#*::AtOM:SQL:Sep::}'::AtOM:SQL:Sep::'
|
||||||
destfileid=${rest%%|*}
|
destfileid=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
filename=${rest%%|*}
|
filename=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
album=${rest%%|*}
|
album=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
albumartist=${rest%%|*}
|
albumartist=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
artist=${rest%%|*}
|
artist=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
composer=${rest%%|*}
|
composer=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
disc=${rest%%|*}
|
disc=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
genre=${rest%%|*}
|
genre=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
performer=${rest%%|*}
|
performer=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
title=${rest%%|*}
|
title=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
track=${rest%%|*}
|
track=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
year=${rest%%|*}
|
year=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
if [ -n "$oldfilename" -a -f "$oldfilename" ]
|
if [ -n "$oldfilename" -a -f "$oldfilename" ]
|
||||||
then
|
then
|
||||||
getDestDir
|
getDestDir
|
||||||
@ -720,10 +720,10 @@ done
|
|||||||
echo 'BEGIN TRANSACTION;' >&3
|
echo 'BEGIN TRANSACTION;' >&3
|
||||||
for line in "${lines[@]}"
|
for line in "${lines[@]}"
|
||||||
do
|
do
|
||||||
id=${line%%|*}
|
id=${line%%::AtOM:SQL:Sep::*}
|
||||||
rest=${line#*|}
|
rest=${line#*::AtOM:SQL:Sep::}
|
||||||
filename=${rest%%|*}
|
filename=${rest%%::AtOM:SQL:Sep::*}
|
||||||
oldfilename=${rest#*|}
|
oldfilename=${rest#*::AtOM:SQL:Sep::}
|
||||||
if [[ $oldfilename != $filename ]] && [ -f "$oldfilename" ]
|
if [[ $oldfilename != $filename ]] && [ -f "$oldfilename" ]
|
||||||
then
|
then
|
||||||
rm -f "$oldfilename"
|
rm -f "$oldfilename"
|
||||||
|
|||||||
@ -31,15 +31,15 @@ copyFiles_action() {
|
|||||||
echo 'BEGIN TRANSACTION;' >&3
|
echo 'BEGIN TRANSACTION;' >&3
|
||||||
for copyfile in "${copyfiles[@]}"
|
for copyfile in "${copyfiles[@]}"
|
||||||
do
|
do
|
||||||
sourcefilename=${copyfile%%|*}
|
sourcefilename=${copyfile%%::AtOM:SQL:Sep::*}
|
||||||
sourcedir=${sourcefilename%/*}
|
sourcedir=${sourcefilename%/*}
|
||||||
rest="${copyfile#*|}|"
|
rest="${copyfile#*::AtOM:SQL:Sep::}::AtOM:SQL:Sep::"
|
||||||
lastchange=${rest%%|*}
|
lastchange=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
destinationid=${rest%%|*}
|
destinationid=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
destfileid=${rest%%|*}
|
destfileid=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
echo 'SELECT IFNULL( (
|
echo 'SELECT IFNULL( (
|
||||||
SELECT destination_files.filename
|
SELECT destination_files.filename
|
||||||
FROM destination_files
|
FROM destination_files
|
||||||
|
|||||||
@ -24,5 +24,6 @@ openDatabase() {
|
|||||||
exec 3> >(tee -a $tempdir/debug.log >&5)
|
exec 3> >(tee -a $tempdir/debug.log >&5)
|
||||||
fi
|
fi
|
||||||
cat $schema >&3
|
cat $schema >&3
|
||||||
|
echo '.separator ::AtOM:SQL:Sep::' >&3
|
||||||
echo 'PRAGMA foreign_keys = ON;' >&3
|
echo 'PRAGMA foreign_keys = ON;' >&3
|
||||||
}
|
}
|
||||||
|
|||||||
@ -27,5 +27,12 @@ sanitizeFile() {
|
|||||||
string=${string/%+(.)/}
|
string=${string/%+(.)/}
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
# Not exactly filename sanitity, but these will make the script fail in
|
||||||
|
# a decorative way..
|
||||||
|
string="${string//&/\\&}"
|
||||||
|
strint="${string//;/\\;}"
|
||||||
|
# And these would exhibit strange behaviors
|
||||||
|
string="${string//\[/\\\[}"
|
||||||
|
string="${string//\]/\\\]}"
|
||||||
echo "$string"
|
echo "$string"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,16 +12,16 @@ gettaskinfos() {
|
|||||||
WHERE id='$1';
|
WHERE id='$1';
|
||||||
' >&3
|
' >&3
|
||||||
read -u4 line
|
read -u4 line
|
||||||
taskid=${line%%|*}
|
taskid=${line%%::AtOM:SQL:Sep::*}
|
||||||
rest="${line#*|}|"
|
rest="${line#*::AtOM:SQL:Sep::}::AtOM:SQL:Sep::"
|
||||||
sourcefileid=${rest%%|*}
|
sourcefileid=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
required=${rest%%|*}
|
required=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cleanup=${rest%%|*}
|
cleanup=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
destfileid=${rest%%|*}
|
destfileid=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
destfilename=${rest%%|*}
|
destfilename=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -69,78 +69,78 @@ master() {
|
|||||||
else
|
else
|
||||||
(( ++active ))
|
(( ++active ))
|
||||||
read -u4 line
|
read -u4 line
|
||||||
taskid=${line%%|*}
|
taskid=${line%%::AtOM:SQL:Sep::*}
|
||||||
rest="${line#*|}|"
|
rest="${line#*::AtOM:SQL:Sep::}::AtOM:SQL:Sep::"
|
||||||
sourcefileid=${rest%%|*}
|
sourcefileid=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
required=${rest%%|*}
|
required=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg=("${rest%%|*}")
|
cmd_arg=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cmd_arg+=("${rest%%|*}")
|
cmd_arg+=("${rest%%::AtOM:SQL:Sep::*}")
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
cleanup=${rest%%|*}
|
cleanup=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
destfileid=${rest%%|*}
|
destfileid=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
destfilename=${rest%%|*}
|
destfilename=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
for key in ${!cmd_arg[@]}
|
for key in ${!cmd_arg[@]}
|
||||||
do
|
do
|
||||||
[ -z "${cmd_arg[key]}" ] && unset cmd_arg[key]
|
[ -z "${cmd_arg[key]}" ] && unset cmd_arg[key]
|
||||||
|
|||||||
@ -112,8 +112,8 @@ getdstfiles() {
|
|||||||
done
|
done
|
||||||
for line in "${lines[@]}"
|
for line in "${lines[@]}"
|
||||||
do
|
do
|
||||||
fileid=${line%|*}
|
fileid=${line%::AtOM:SQL:Sep::*}
|
||||||
filename=${line#*|}
|
filename=${line#*::AtOM:SQL:Sep::}
|
||||||
echo $'\t'"$filename"
|
echo $'\t'"$filename"
|
||||||
(( rename )) && echo -n $'\t'
|
(( rename )) && echo -n $'\t'
|
||||||
(( rename )) && renameFile
|
(( rename )) && renameFile
|
||||||
@ -149,12 +149,12 @@ do
|
|||||||
done
|
done
|
||||||
for line in "${lines[@]}"
|
for line in "${lines[@]}"
|
||||||
do
|
do
|
||||||
fileid=${line%%|*}
|
fileid=${line%%::AtOM:SQL:Sep::*}
|
||||||
rest="${line#*|}|"
|
rest="${line#*::AtOM:SQL:Sep::}::AtOM:SQL:Sep::"
|
||||||
filename=${rest%%|*}
|
filename=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
mimetype=${rest%%|*}
|
mimetype=${rest%%::AtOM:SQL:Sep::*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
dest=$sourcepath
|
dest=$sourcepath
|
||||||
case "$mimetype" in
|
case "$mimetype" in
|
||||||
'audio/mpeg')
|
'audio/mpeg')
|
||||||
|
|||||||
@ -140,33 +140,33 @@ done
|
|||||||
for line in "${lines[@]}"
|
for line in "${lines[@]}"
|
||||||
do
|
do
|
||||||
missing=()
|
missing=()
|
||||||
filename=${line%%|*}
|
filename=${line%%::AtOM:SQL:Sep::*}
|
||||||
rest="${line#*|}|"
|
rest="${line#*::AtOM:SQL:Sep::}::AtOM:SQL:Sep::"
|
||||||
(( ${checks[genre]} )) && [ -z "${rest%%|*}" ] && missing+=( "Genre" )
|
(( ${checks[genre]} )) && [ -z "${rest%%::AtOM:SQL:Sep::*}" ] && missing+=( "Genre" )
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
(( ${checks[albumartist]} )) && [ -z "${rest%%|*}" ] && missing+=( "AlbumArtist" )
|
(( ${checks[albumartist]} )) && [ -z "${rest%%::AtOM:SQL:Sep::*}" ] && missing+=( "AlbumArtist" )
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
(( ${checks[year]} )) && [ -z "${rest%%|*}" ] && missing+=( "Year" )
|
(( ${checks[year]} )) && [ -z "${rest%%::AtOM:SQL:Sep::*}" ] && missing+=( "Year" )
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
(( ${checks[album]} )) && [ -z "${rest%%|*}" ] && missing+=( "Album" )
|
(( ${checks[album]} )) && [ -z "${rest%%::AtOM:SQL:Sep::*}" ] && missing+=( "Album" )
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
(( ${checks[disc]} )) && [ -z "${rest%%|*}" ] && missing+=( "Disc" )
|
(( ${checks[disc]} )) && [ -z "${rest%%::AtOM:SQL:Sep::*}" ] && missing+=( "Disc" )
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
(( ${checks[artist]} )) && [ -z "${rest%%|*}" ] && missing+=( "Artist" )
|
(( ${checks[artist]} )) && [ -z "${rest%%::AtOM:SQL:Sep::*}" ] && missing+=( "Artist" )
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
track=${rest%%|*}
|
track=${rest%%::AtOM:SQL:Sep::*}
|
||||||
(( ${checks[track]} )) && [ -z "$track" ] && missing+=( "Track" )
|
(( ${checks[track]} )) && [ -z "$track" ] && missing+=( "Track" )
|
||||||
if (( ${checks[tracktotal]} )) && ! [[ $track =~ / ]]
|
if (( ${checks[tracktotal]} )) && ! [[ $track =~ / ]]
|
||||||
then
|
then
|
||||||
missing+=( TrackTotal )
|
missing+=( TrackTotal )
|
||||||
fi
|
fi
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
(( ${checks[title]} )) && [ -z "${rest%%|*}" ] && missing+=( "Title" )
|
(( ${checks[title]} )) && [ -z "${rest%%::AtOM:SQL:Sep::*}" ] && missing+=( "Title" )
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
(( ${checks[composer]} )) && [ -z "${rest%%|*}" ] && missing+=( "Composer" )
|
(( ${checks[composer]} )) && [ -z "${rest%%::AtOM:SQL:Sep::*}" ] && missing+=( "Composer" )
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
(( ${checks[performer]} )) && [ -z "${rest%%|*}" ] && missing+=( "Performer" )
|
(( ${checks[performer]} )) && [ -z "${rest%%::AtOM:SQL:Sep::*}" ] && missing+=( "Performer" )
|
||||||
rest=${rest#*|}
|
rest=${rest#*::AtOM:SQL:Sep::}
|
||||||
echo "$filename: ${missing[@]}"
|
echo "$filename: ${missing[@]}"
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user