X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=scripts%2Ffiles%2Fremove_bracket_id.sh;h=66b5a61b31ed62e37d108cd920f2845bdbb90dcb;hb=d02469fa157f9ff5f9dc8adb210e5d27649d2e2a;hp=20a0165e4f07dd9bd5d4d20faf509cad000c4f01;hpb=2952ccf47b80174880141a7ecfa122089f349b8d;p=feisty_meow.git diff --git a/scripts/files/remove_bracket_id.sh b/scripts/files/remove_bracket_id.sh index 20a0165e..66b5a61b 100644 --- a/scripts/files/remove_bracket_id.sh +++ b/scripts/files/remove_bracket_id.sh @@ -1,13 +1,21 @@ +#!/bin/bash +# a handy script for fixing file names imported using second inventory. +# the names have a hideous long guid as part of them by default. -file=$1 - -if [ -z "$file" ]; then - echo "need a parameter that's a file to remove the id from the name." - exit 3 +if [ $# -lt 1 ]; then + echo "This script requires one or more file names whose names should be fixed." + echo "Any GUID junk embedded in the name within brackets will be removed." + exit 1 fi -newname="$(echo "$file" | sed -e 's/\([^[ ]*\) \[[a-z0-9A-Z-]*\]/\1/')" - -mv "$file" "$newname" +while [ $# -gt 0 ]; do + file="$1"; shift + newname="$(echo "$file" | sed -e 's/\[[a-z0-9A-Z-]*\]//g' | tr ' ' '_' | tr -d "\~'" | sed -e 's/\([0-9]\)_\./\1./g' )" + if [ "$file" != "$newname" ]; then + # we've effected a name change, so let's actually do it. + echo "moving '$file' => '$newname' " + mv "$file" "$newname" + fi +done