#!/usr/bin/python import os import sys from math import log, ceil if len(sys.argv) > 1: filepath = " ".join(sys.argv[1:]) else: filepath = os.path.abspath(os.curdir) if filepath[-1] == os.sep: filepath = filepath[:-1] if not os.path.isdir(filepath): print "Target not a directory!" sys.exit() def clear(list, name): f = "%0" + str(ceil(log(len(list),10))) + "d" out = [] i = 0 for n in list: if os.path.isfile(n): ext = n[n.rfind("."):].lower() if ext == ".jpe": ext = ".jpg" if ext == ".jpeg": ext = ".jpg" if ext in [".jpg", ".png", ".gif", ".avi"]: i += 1 new = name + f % i + ext if new != n: while (new in list): list.remove(new) i += 1 new = name + f % i + ext else: new = "" else: new = n else: new = n out.append(new) return out def cleandir(path): file = path[path.rfind(os.sep) + 1:] list = [x for x in os.listdir(os.curdir) if x != "Thumbs.db"] nlist = clear(list, file) list = zip(list,nlist) for old, new in list: if os.path.isdir(old): print "\ngoing into " + old os.chdir(old) cleandir(path + os.sep + old) os.chdir(path) else: if new: print "renaming " + old + " to " + new try: pass os.rename(old,new) except OSError: print "\t *** Permision denied for " + old + "***" print "\nStarting\n" os.chdir(filepath) cleandir(filepath)