Skip to main content
more consistent use of ${var#pattern} operators. Missing --
Source Link
Stéphane Chazelas
  • 584.6k
  • 96
  • 1.1k
  • 1.7k

Having done something very similar recently I already had a script.

for f in */*/*
do
  destdir=$(dirname "$f"){f%/*}
  tvshow=${f%%/*}
  season=$(dirname "${f#${tvshow}destdir#*/}")
  episode=$(basename "$f"){f##*/}
  # Get season number
  seasonnum=${season##* }

  dest=$(printf "%s/%s - S%02iE%s" "$destdir" "$tvshow" $seasonnum "$episode")
  echo "mv -- \"$f\" \"$dest\""
  # mv -- "$f" "$dest"
done

Having done something very similar recently I already had a script.

for f in */*/*
do
  destdir=$(dirname "$f")
  tvshow=${f%%/*}
  season=$(dirname "${f#${tvshow}/}")
  episode=$(basename "$f")
  # Get season number
  seasonnum=${season##* }

  dest=$(printf "%s/%s - S%02iE%s" "$destdir" "$tvshow" $seasonnum "$episode")
  echo "mv \"$f\" \"$dest\""
  # mv "$f" "$dest"
done

Having done something very similar recently I already had a script.

for f in */*/*
do
  destdir=${f%/*}
  tvshow=${f%%/*}
  season=${destdir#*/}
  episode=${f##*/}
  # Get season number
  seasonnum=${season##* }

  dest=$(printf "%s/%s - S%02iE%s" "$destdir" "$tvshow" $seasonnum "$episode")
  echo "mv -- \"$f\" \"$dest\""
  # mv -- "$f" "$dest"
done
Source Link
Paranoid
  • 325
  • 1
  • 3

Having done something very similar recently I already had a script.

for f in */*/*
do
  destdir=$(dirname "$f")
  tvshow=${f%%/*}
  season=$(dirname "${f#${tvshow}/}")
  episode=$(basename "$f")
  # Get season number
  seasonnum=${season##* }

  dest=$(printf "%s/%s - S%02iE%s" "$destdir" "$tvshow" $seasonnum "$episode")
  echo "mv \"$f\" \"$dest\""
  # mv "$f" "$dest"
done