#!/bin/bash export IFS=$'\n'; for afile in $(find . -maxdepth 1 -type f \( -iname "*.mpg" -o -iname "*.vob" -o -iname "*.m4v" -o -iname "*.mov" -o -iname "*.avi" -o -iname "*.mp4" -o -iname "*.wmv" -o -iname "*.flv" -o -iname "*.rmvb" -o -iname "*.mpeg" -o -iname "*.mkv" -o -iname "*.mov" \) | grep -v mobile | sort -f); do filename=`echo ${afile:2}` ext=`echo ${filename} | awk -F. '{print "."$NF}'` fn_noext=`basename "${filename}" $ext` i=`echo ${filename}` # echo "Will remove date: ${i}"; unset hasdate # echo echo "Looking at $i" hasfulldate=`echo "$i" | awk '/[[:digit:]][[:digit:]][[:digit:]][[:digit:]][\._]/'` if [ -z "$hasfulldate" ] ; then hasfulldate=`echo ""` else hasdate=`echo "1"` fi if [ -z "$hasfulldate" ] ; then haspartialdate=`echo "$i" | awk '/[\._][[:digit:]][[:digit:]][\._][[:digit:]][[:digit:]]/'` if [ -z "$haspartialdate" ] ; then haspartialdate=`echo ""` else hasdate=`echo "1"` fi fi if [ -z $hasdate ] ; then unset hasdate else echo "mv -n date: $i " # in this order: # .dddd.dd.dd # .dd.dd.dddd # .dd.dd.dd # .19dd # .20dd # # res=`echo mv -n "$i" "${i//[[:digit:]][[:digit:]][[:digit:]][[:digit:]][[:digit:]][[:digit:]][[:digit:]][[:digit:]]/}"` # echo echo "res is $res" # dddd.dd.dd. mv -n "$i" "${i//[[:digit:]][[:digit:]][[:digit:]][[:digit:]][\._][[:digit:]][[:digit:]][\._][[:digit:]][[:digit:]][\._]/}" if [ -f $i ] ; then # 19dddddd. mv -n "$i" "${i//[1][9][[:digit:]][[:digit:]][[:digit:]][[:digit:]][[:digit:]][[:digit:]][\._]/}" fi if [ -f $i ] ; then # 20dddddd. mv -n "$i" "${i//[2][0][[:digit:]][[:digit:]][[:digit:]][[:digit:]][[:digit:]][[:digit:]][\._]/}" fi if [ -f $i ] ; then # dd.dd.dddd. mv -n "$i" "${i//[[:digit:]][[:digit:]][\._][[:digit:]][[:digit:]][\._][[:digit:]][[:digit:]][[:digit:]][[:digit:]][\._]/}" fi if [ -f $i ] ; then # dd.dd.dd. mv -n "$i" "${i//[[:digit:]][[:digit:]][\._][[:digit:]][[:digit:]][\._][[:digit:]][[:digit:]][\._]/}" fi if [ -f $i ] ; then # 19dd. mv -n "$i" "${i//[1][9][[:digit:]][[:digit:]][\._]/}" fi if [ -f $i ] ; then # 20dd. mv -n "$i" "${i//[2][0][[:digit:]][[:digit:]][\._]/}" fi # echo " ---- " # echo " " fi done IFS=$SAVEIFS