Here is the revised version: #!/usr/bin/python # -*- coding: utf-8 -*- import os currentDir = os.getcwd() i = 1 filesList = os.walk(currentDir) for rootDirs, folders, files in filesList: for f in files: if (rootDirs!=currentDir): toMove = os.path.join(rootDirs, f) print "--- "+str(i) print toMove newFilename = os.path.join(currentDir,f) renameNumber = 1 while(os.path.exists(newFilename)): print "- "+newFilename newFilename = os.path.join(currentDir,f)+"_"+str(renameNumber) renameNumber = renameNumber+1 print newFilename i=i+1 os.rename(toMove, newFilename)
Now, features to add: 1) Remove empty directories. I think that os.removedirs will work here. 2) Prevent race conditions by performing the filename check during write. For that I need to find a function that fails to write when the file exists. 3) Confirmation button to prevent accidental runs in $HOME for instance. Maybe add some other sanity checks. If anybody is still reading, I would love to know what sanity checks would be wise to perform. Again, thanks to all who have helped. -- Dotan Cohen http://bido.com http://what-is-what.com _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor