-#! /bin/sh
+#! /bin/bash
# replace spaces with underscores, lowercase everything, ditch multiple underscores, and ditch _.foo.
# should probably try to avoid overwriting existing files, but c'est la vie!
-set - $(getopt -u --longoptions 'anime' -- '' "$@")
+
+TEMP="$(getopt --longoptions 'anime' -- '' "$@")"
+eval set -- "$TEMP"
set -e
ANIME_CUT=0
-while [ $1 != '--' ]; do
+while [ $1 != "--" ]; do
case $1 in
--anime)
ANIME_CUT=1
;;
- --restart)
- RESTART=1
- ;;
- --force)
- FORCE=1
- ;;
esac;
shift
done;
shift;
+set -x
if [ "$ANIME_CUT" == 0 ]; then
- rename 's/\s+/\_/g; $_ = lc($_); s/\_+/\_/g; s/\_\././' "$@"
+ rename 's/\s+/\_/g; s{[^\w\d.\/]}{\_}g; s/_$//g; $_ = lc($_); s/\_+/\_/g; s/\_\././; s/^_+//g; s/_+$//g;' "$@"
else
- rename 's/\[[^\]]+\]//g; s/^_+//; s/\s+/\_/g; $_ = lc($_); s/[_-]+/\_/g; s/\_\././' "$@"
-fi;
\ No newline at end of file
+ rename 's{\[[^\]\/]+\]}{}g; s{\([^\)\/]+\)}{}g; s/\s+/\_/g; $_ = lc($_); s/[_-]+/\_/g; s/\_\././; s/^_+//; s/_+$//g;' "$@"
+fi;