Advertisement
Guest User

rascalli

a guest
Jan 22nd, 2008
629
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 4.57 KB | None | 0 0
  1. #! /bin/bash
  2.    
  3. set -u
  4.  
  5. CATEGORY_NAME=`echo $1 | awk -F [/] '{print $(NF-1)}'`
  6.  
  7. echo $2 >> /var/log/sab_proc.log
  8.  
  9. echo "Category: $CATEGORY_NAME" >> /var/log/sab_proc.log
  10.  
  11.  
  12. FOLDER_PATH="$1"
  13. FOLDER_NAME=`echo $FOLDER_PATH | awk -F [/] '{print $NF}'`
  14.  
  15.  
  16. echo "Folder Path: $FOLDER_PATH" >> /var/log/sab_proc.log
  17.  
  18. cd "$FOLDER_PATH"
  19. ####################
  20. # Movie Processing #
  21. ####################
  22.  
  23. if [ $CATEGORY_NAME = "Movies" ]
  24. then
  25.     # Where do you want to put the movies that this script processes?
  26.     MOVIE_DESTINATION_DIRECTORY="WHERE_TO_SAVE_MOVIE_FILES"
  27.  
  28.     MOVIE_NAME=`echo $FOLDER_NAME | sed 's/ (.*)//g'`
  29.     echo "Movie Name: $MOVIE_NAME" >> /var/log/sab_proc.log
  30.  
  31.        
  32.     if [ `find . -size +629145600c -regex '.*/.*\.avi' | wc -l` -eq 2 ]
  33.         then
  34.         FILEZ[1]="$FOLDER_PATH`find . -size +629145600c -regex '.*/.*\.avi' | sort | sed -n '1p' | sed 's/^\.//'`"
  35.         FILEZ[2]="$FOLDER_PATH`find . -size +629145600c -regex '.*/.*\.avi' | sort | sed -n '2p' | sed 's/^\.//'`"
  36.         echo "Joining Files..." >> /var/log/sab_proc.log
  37.         mencoder -forceidx -ovc copy -oac copy -o "$FOLDER_PATH/$MOVIE_NAME".avi "${FILEZ[1]}" "${FILEZ[2]}"
  38.         #Get the path for the avi
  39.         FILEZ[1]="$FOLDER_PATH`find . -size +629145600c -regex '.*/.*\.avi' | sed 's/^\.//'`"
  40.         echo "Making Folder..." >> /var/log/sab_proc.log
  41.         #Make Folder for the avi
  42.         mkdir "$MOVIE_DESTINATION_DIRECTORY/$MOVIE_NAME"
  43.         echo "Moving Files..." >> /var/log/sab_proc.log
  44.         #Move the avi to the folder
  45.         mv "${FILEZ[1]}" "$MOVIE_DESTINATION_DIRECTORY/$MOVIE_NAME/$MOVIE_NAME.avi"
  46.         #If there's an nfo, move that into the folder as well
  47.         if [ `find . -regex '.*/.*\.nfo' | wc -l` -gt 0 ]
  48.         then
  49.         FILEZ[2]="$FOLDER_PATH`find . -regex '.*/.*\.nfo' | sed 's/^\.//'`"
  50.         mv "${FILEZ[2]}" "$MOVIE_DESTINATION_DIRECTORY/$MOVIE_NAME/$MOVIE_NAME.nfo"
  51.         rm -r "$FOLDER_PATH"  
  52.       echo "Removing Folder: $FOLDER_NAME..." >> /var/log/sab_proc.log
  53.         #*      growlnotify -m "Download Complete: $MOVIE_NAME" -i "avi"
  54.     else
  55.         #Get the path for the avi
  56.         FILEZ[1]="$FOLDER_PATH`find . -size +629145600c -regex '.*/.*\.avi' | sed 's/^\.//'`"
  57.         echo "Making Folder..." >> /var/log/sab_proc.log
  58.         #Make Folder for the avi
  59.         mkdir "$MOVIE_DESTINATION_DIRECTORY/$MOVIE_NAME"
  60.         echo "Moving Files..." >> /var/log/sab_proc.log
  61.         #Move the avi to the folder
  62.         mv "${FILEZ[1]}" "$MOVIE_DESTINATION_DIRECTORY/$MOVIE_NAME/$MOVIE_NAME.avi"
  63.         #If there's an nfo, move that into the folder as well
  64.         if [ `find . -regex '.*/.*\.nfo' | wc -l` -gt 0 ]
  65.         then
  66.         FILEZ[2]="$FOLDER_PATH`find . -regex '.*/.*\.nfo' | sed 's/^\.//'`"
  67.         mv "${FILEZ[2]}" "$MOVIE_DESTINATION_DIRECTORY/$MOVIE_NAME/$MOVIE_NAME.nfo"
  68.         rm -r "$FOLDER_PATH"  
  69.       echo "Removing Folder: $FOLDER_NAME..." >> /var/log/sab_proc.log
  70. #*          growlnotify -m "Download Complete: $MOVIE_NAME" -i "avi"
  71.             else
  72.             echo "Couldn't copy(too many files or no files?)" >> /var/log/sab_proc.log
  73.         fi
  74.     fi
  75.  
  76. fi
  77.  
  78. #################
  79. # TV Processing #
  80. #################
  81.  
  82. if [ $CATEGORY_NAME = "TV" ]
  83.     then
  84.    
  85.     echo "Beginning TV Processing..." >> /var/log/sab_proc.log
  86.    
  87.     ##Where is your root TV directory? This script will create folders in it, i.e. ROOT_TV/Seinfeld/Season 8/...
  88.     TV_DESTINATION_DIRECTORY="WHERE_TO_SAVE_TV_FILES"
  89.  
  90.     if [ `echo $FOLDER_NAME | awk -F " - " '{print NF}'` -ne 3 ]
  91.         then
  92.         echo "Folder name incorrect, quitting..." >> /var/log/sab_proc.log
  93.         exit 0
  94.     fi
  95.     OPT_NAME=`echo $FOLDER_NAME | sed 's/ (.*)//g'`
  96.    
  97.     SHOW_NAME=`echo $OPT_NAME | awk -F " - " '{print $1}'`
  98.    
  99.  
  100.     echo "Show Name: $SHOW_NAME" >> /var/log/sab_proc.log
  101.     SEASON_NUMBER=`echo $OPT_NAME | awk -F " - " '{print $2}' | awk -F "x" '{print $1}'`
  102.     echo "Season Number: $SEASON_NUMBER" >> /var/log/sab_proc.log
  103.     EPISODE_NUMBER=`echo $OPT_NAME | awk -F " - " '{print $2}' | awk -F "x" '{print $2}'`
  104.    
  105.     if [ `find . -size +73400320c -regex '.*/.*\.avi' | wc -l` -eq 1 ]
  106.         then
  107.         FILEZ[1]="$FOLDER_PATH`find . -size +73400320c -regex '.*/.*\.avi' | sed 's/^\.//'`"
  108.         echo "One file found, making directories..." >> /var/log/sab_proc.log
  109.         mkdir "$TV_DESTINATION_DIRECTORY/$SHOW_NAME"
  110.         mkdir "$TV_DESTINATION_DIRECTORY/$SHOW_NAME/Season $SEASON_NUMBER"
  111.         echo "Moving File..." >> /var/log/sab_proc.log
  112.         mv "${FILEZ[1]}" "$TV_DESTINATION_DIRECTORY/$SHOW_NAME/Season $SEASON_NUMBER/$OPT_NAME.avi"
  113.         echo "Removing Folder..." >> /var/log/sab_proc.log
  114.         rm -r "$FOLDER_PATH"
  115. #*      growlnotify -m "Download Complete: $SHOW_NAME - $SEASON_NUMBER\x$EPISODE_NUMBER" -i "avi"
  116.         else
  117.         echo "Couldn't copy(too many files or no files?)" >> /var/log/sab_proc.log
  118.     fi
  119.  
  120.    
  121.    
  122.     echo "Done!" >> /var/log/sab_proc.log
  123. fi
  124.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement