emkay443

muxall.sh

Feb 20th, 2016
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 0.93 KB | None | 0 0
  1. #!/bin/bash
  2. # Author: Michael Koch (m<DOT>koch<AT>emkay443<DOT>de)
  3. # License: GNU GPL v3
  4.  
  5. # ./tool in out lang subt
  6.  
  7. function usage {
  8.     echo "Usage: $0 [input dir] [output dir] [language] [subtitles(true/false)]"
  9. }
  10.  
  11. [ -z "$1" ] && usage && exit 1
  12. [ -z "$2" ] && usage && exit 2
  13. [ -z "$4" ] && usage && exit 3
  14. [ -z "$3" ] && usage && exit 4
  15.  
  16. dir_in="$1"
  17. dir_out="$2"
  18. lang="$3"
  19. subt="$4"
  20.  
  21. for file in "$dir_in"/*; do
  22.     nf_basename="$(basename "$file")"
  23.     nf_basename="${nf_basename%.*}"
  24.     nf_without_episode_number="$(cut -d '-' -f 2- <<< "$nf_basename" | cut -d ' ' -f 2-)"
  25.     nf_filepath="$dir_out/$nf_basename.mkv"
  26.     if $subt; then
  27.         mkvmerge -o "$nf_filepath" --title "$nf_without_episode_number" --default-language "$lang" --language "0:$lang" --language "1:$lang" "$file"
  28.     else
  29.         mkvmerge -o "$nf_filepath" --title "$nf_without_episode_number" --default-language "$lang" --language "0:$lang" --language "1:$lang" --no-subtitles "$file"
  30.     fi
  31. done
  32.  
  33. exit 0
Advertisement
Add Comment
Please, Sign In to add comment