scan destination_files
This commit is contained in:
parent
2c507a4181
commit
496c48d04d
@ -69,14 +69,70 @@ echo '
|
|||||||
;
|
;
|
||||||
SELECT "AtOM:NoMoreFiles";
|
SELECT "AtOM:NoMoreFiles";
|
||||||
' >&3
|
' >&3
|
||||||
|
|
||||||
|
getdstfiles() {
|
||||||
|
local \
|
||||||
|
line \
|
||||||
|
lines
|
||||||
|
unset dest
|
||||||
|
for destination in "${!destinationformat[@]}"
|
||||||
|
do
|
||||||
|
if [[ ${destinationformat["$destination"]} != $format ]]
|
||||||
|
then
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
echo '
|
||||||
|
SELECT
|
||||||
|
destination_files.id,
|
||||||
|
destination_files.filename
|
||||||
|
FROM destination_files
|
||||||
|
INNER JOIN source_files
|
||||||
|
ON
|
||||||
|
destination_files.source_file_id=source_files.id
|
||||||
|
INNER JOIN destinations
|
||||||
|
ON
|
||||||
|
destinations.id=destination_files.destination_id
|
||||||
|
WHERE source_files.id='$fileid'
|
||||||
|
AND destinations.name="'"$destination"'"
|
||||||
|
AND destination_files.filename IS NOT NULL
|
||||||
|
AND destination_files.filename NOT LIKE
|
||||||
|
"%'$extension'"
|
||||||
|
;
|
||||||
|
SELECT "AtOM:NoMoreFiles";
|
||||||
|
'>&3
|
||||||
|
while read -u4 line
|
||||||
|
do
|
||||||
|
if [[ $line == AtOM:NoMoreFiles ]]
|
||||||
|
then
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
lines+=("$line")
|
||||||
|
done
|
||||||
|
done
|
||||||
|
for line in "${lines[@]}"
|
||||||
|
do
|
||||||
|
fileid=${line%|*}
|
||||||
|
filename=${line#*|}
|
||||||
|
echo $'\t'"$filename"
|
||||||
|
(( rename )) && echo -n $'\t'
|
||||||
|
(( rename )) && renameFile
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
renameFile() {
|
renameFile() {
|
||||||
echo $'\t'"${filename%.*}$extension"
|
echo " -> ${filename%.*}$extension"
|
||||||
if ! (( pretend ))
|
if ! (( pretend ))
|
||||||
then
|
then
|
||||||
mv \
|
mv \
|
||||||
"$sourcepath/$filename" \
|
"${dest:+$dest/}$filename" \
|
||||||
"$sourcepath/${filename%.*}$extension" \
|
"${dest:+$dest/}${filename%.*}$extension" \
|
||||||
&& Update source_files filename "${filename%.*}$extension"<<-EOW
|
if [[ $dest == '' ]]
|
||||||
|
then
|
||||||
|
table=destination_files
|
||||||
|
else
|
||||||
|
table=source_files
|
||||||
|
fi
|
||||||
|
&& Update $table filename "${filename%.*}$extension"<<-EOW
|
||||||
id = $fileid
|
id = $fileid
|
||||||
EOW
|
EOW
|
||||||
fi
|
fi
|
||||||
@ -98,39 +154,58 @@ do
|
|||||||
rest=${rest#*|}
|
rest=${rest#*|}
|
||||||
mimetype=${rest%%|*}
|
mimetype=${rest%%|*}
|
||||||
rest=${rest#*|}
|
rest=${rest#*|}
|
||||||
|
dest=$sourcepath
|
||||||
case "$mimetype" in
|
case "$mimetype" in
|
||||||
'audio/mpeg')
|
'audio/mpeg')
|
||||||
if [[ ${filename##*.} != mp3 ]]
|
if [[ ${filename##*.} != mp3 ]]
|
||||||
then
|
then
|
||||||
|
format=mp3
|
||||||
extension=.mp3
|
extension=.mp3
|
||||||
echo "$filename: MP3 ($extension)"
|
echo "$filename: MP3 ($extension)"
|
||||||
(( rename )) && renameFile
|
(( rename )) && renameFile
|
||||||
|
getdstfiles
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
'application/ogg vorbis')
|
'application/ogg vorbis')
|
||||||
if [[ ${filename##*.} != ogg ]]
|
if [[ ${filename##*.} != ogg ]]
|
||||||
then
|
then
|
||||||
|
format=vorbis
|
||||||
extension=.ogg
|
extension=.ogg
|
||||||
echo "$filename: Ogg Vorbis ($extension)"
|
echo "$filename: Ogg Vorbis ($extension)"
|
||||||
(( rename )) && renameFile
|
(( rename )) && renameFile
|
||||||
|
getdstfiles
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
'application/ogg opus')
|
'application/ogg opus')
|
||||||
if [[ ${filename##*.} != opus ]]
|
if [[ ${filename##*.} != opus ]]
|
||||||
then
|
then
|
||||||
|
format=opus
|
||||||
extension=.opus
|
extension=.opus
|
||||||
echo "$filename: Opus ($extension)"
|
echo "$filename: Opus ($extension)"
|
||||||
(( rename )) && renameFile
|
(( rename )) && renameFile
|
||||||
|
getdstfiles
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
'audio/x-flac')
|
'audio/x-flac')
|
||||||
if [[ ${filename##*.} != flac ]]
|
if [[ ${filename##*.} != flac ]]
|
||||||
then
|
then
|
||||||
|
format=flac
|
||||||
extension=.flac
|
extension=.flac
|
||||||
echo "$filename: FLAC ($extension)"
|
echo "$filename: FLAC ($extension)"
|
||||||
(( rename )) && renameFile
|
(( rename )) && renameFile
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
'application/data')
|
||||||
|
extendedtype=$(file -b "$sourcepath/$filename")
|
||||||
|
[[ $extendedtype =~ Mmeusepack ]] || continue
|
||||||
|
if [[ ${filename##*.} != flac ]]
|
||||||
|
then
|
||||||
|
format=mpc
|
||||||
|
extension=.mpc
|
||||||
|
echo "$filename: Musepack ($extension)"
|
||||||
|
(( rename )) && renameFile
|
||||||
|
fi
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user