Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- ##########################################################################################################
- # RENAMING SCRIPT
- # CONFIG
- PATH=/opt/bin:/opt/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/pyload/scripts/unrar_finished
- DESTINATION="/volume1/Video/" #path where downloaded files should be moved to
- ##########################################################################################################
- # find and delete unnecessary files and folders
- find . \( -name '*.sfv' -o -name '*.nfo' -o -name '*.txt' -o -name '*.rev' \) -type f -exec rm '{}' \;
- find . \( -iname '*sample*' -o -iname 'subs' -o -iname '*imdb*' \) -type d -exec rm -rf '{}' \;
- ##########################################################################################################
- # start cleanup filenames and foldernames - first replace spaces with dots
- rmSpacesDir()
- {
- find `$UF_FOLDER/`* -name "* *" -type d -print | while read FILE
- do
- NEW=`echo "$FILE" | sed -r 's/ +/./g'`
- mv "$FILE" "$NEW"
- done
- }
- rmSpaces()
- {
- find `$UF_FOLDER/`* -name "* *" -type f -print | while read FILE
- do
- NEW=`echo "$FILE" | sed -r 's/ +/./g'`
- mv "$FILE" "$NEW"
- done
- }
- rmSpacesDir
- rmSpaces
- rmSpacesDir
- rmSpaces
- rmSpacesDir
- rmSpaces
- ##########################################################################################################
- # replace - and _ and .. with dots
- cleanRecursive()
- {
- for FILE in `ls`
- do
- if [ -d $FILE ]; then
- cd $FILE
- cleanRecursive
- cleanFiles
- cd ..
- fi
- done
- }
- cleanFiles()
- {
- for FILE in `ls`
- do
- if [ -f $FILE -o -d $FILE ]; then
- convert=`echo $FILE | sed -r 's/-/./g;s/_/./g;s/\.+/./g'`
- mv $FILE $convert
- fi
- done
- }
- cleanRecursive
- cleanFiles > /dev/null
- cleanRecursive
- cleanFiles > /dev/null
- ##########################################################################################################
- # set everthing to lowercase
- renRecursive()
- {
- for FILE in `ls`
- do
- if [ -d $FILE ]; then
- cd $FILE
- renRecursive
- renFiles
- cd ..
- fi
- done
- }
- renFiles()
- {
- for FILE in `ls`
- do
- if [ -f $FILE -o -d $FILE ]; then
- convert=`echo $FILE | tr [:upper:] [:lower:]`
- mv $FILE $convert
- fi
- fi
- done
- }
- renRecursive
- renFiles > /dev/null
- ##########################################################################################################
- # uppercase first character (after dot) and do renaming
- upRecursive()
- {
- for FILE in `ls`
- do
- if [ -d $FILE ]; then
- cd $FILE
- upRecursive
- renUpperfolders
- renUpperfiles
- cd ..
- fi
- done
- }
- renUpperfolders()
- {
- for FILE in `ls`
- do
- if [ -d $FILE ]; then
- # pay attention not to break this line
- convert=`echo $FILE | sed -r 's/(\<.)/\u\1/g;s/s0/S0/;s/s1/S1/;s/e0/E0/;s/e1/E1/;s/e2/E2/;s/Dvd/DVD/;s/Dts/DTS/;s/Ac/AC/;s/Md/MD/;s/Bd/BD/;s/3d/3D/;s/Ld/LD/;s/Dl/DL/;s/Hd/HD/'`
- mv $FILE $convert
- fi
- done
- }
- renUpperfiles()
- {
- for FILE in `ls`
- do
- if [ -f $FILE ]; then
- # pay attention not to break this line
- convert=`echo $FILE | sed -r 's/(\<.)/\u\1/g;s/s0/S0/;s/s1/S1/;s/e0/E0/;s/e1/E1/;s/e2/E2/;s/Dvd/DVD/;s/Dts/DTS/;s/Ac/AC/;s/3d/3D/;s/Md/MD/;s/Bd/BD/;s/Hd/HD/;s/\.Sh$/.sh/;s/\.Mkv$/.mkv/;s/\.Avi$/.avi/;s/\.Img$/.img/;s/\.Iso$/.iso/;s/\.Wmv$/.wmv/;s/\.Vob$/.vob/;s/\.Mp4$/.mp4/'`
- mv $FILE $convert
- fi
- done
- }
- upRecursive
- renUpperfolders > /dev/null
- renUpperfiles > /dev/null
- ##########################################################################################################
- # start remove scene tags
- rmTagsRecursive()
- {
- for FILE in `ls`
- do
- if [ -d $FILE ]; then
- cd $FILE
- rmTagsRecursive
- rmTags
- cd ..
- fi
- done
- }
- rmTags()
- {
- for FILE in `ls`
- do
- if [ -d $FILE -o -f $FILE ]; then
- # pay attention not to break this line
- convert=`echo $FILE | sed -r 's/Itg//g;s/Zzgtv//g;s/Runscript/runscript/;s/Qom//g;s/Tvs//g;s/Zg//g;s/Kinowelt//g;s/German//g;s/Jcm//g;s/Ldtv//g;s/Internal//g;s/Tvp//g;s/Deli//g;s/Euhd//g;s/Amb//g;s/Encounters//g;s/Sow//g;s/Sof//g;s/Videowelt//g;s/HDa//g;s/Vcf//g;s/Fbi//g;s/Empire//g;s/Nva//g;s/Tvh//g;s/Aaf//g;s/Isd//g;s/Klassiger//g;s/Idtv//g;s/Mb//g;s/Tuf//g;s/Rsg//g;s/Dec//g;s/Hdw//g;s/7p/720p/;s/Ithd//g;s/Ded//g;s/Centi//g;s/Haco//g;s/Dubbed//g;s/Dl//g;s/Gtvg//g;s/DL//g;s/Web//g;s/Details//g;s/Ws//g;s/X264//g;s/Euhd//g;s/Termi//g;s/Xvid//g;s/Ituneshd//g;s/\.+/./g;s/^\.+//;s/\.+$//'`
- mv $FILE $convert
- fi
- done
- }
- rmTagsRecursive > /dev/null
- rmTags > /dev/null
- ##########################################################################################################
- # move files to destinated folder
- sleep 12
- cd "$UF_FOLDER"
- ls -A runscript.sh |xargs rm
- copy2destination()
- {
- for FILE in `ls`
- do
- if [ -d "$FILE" -o -f "$FILE" ]; then
- mv "$FILE" "$DESTINATION"
- fi
- # index files and folders - only for synology nas
- # cd "$DESTINATION"
- # if [ -d "$FILE" ] ; then
- # /usr/syno/bin/synoindex -A "$FILE" > /dev/null
- # fi
- # if [ -f "$FILE" ] ; then
- # /usr/syno/bin/synoindex -a "$FILE" > /dev/null
- # fi
- done
- }
- copy2destination
- ##########################################################################################################
- # remove created folder for dlc
- rmdir "$UF_FOLDER"
- ##########################################################################################################
- # end of script
- exit
Advertisement
Add Comment
Please, Sign In to add comment