#1 : 08/04-23 11:49 David Tiede
Posts: 4
|
Hey,
it's a repost, because I can't reply to the old post: https://www.advancedrenamer.com/forum_thread?for um_id=4444 I want to do the following: As a name collision rule, I want to append an incrementing number. Example: Foo.txt Foo.txt Bar.txt Bar.txt Bar.txt The resulting names should be: Foo.txt Foo_1.txt Bar.txt Bar_1.txt Bar_2.txt With “Append incrementing number” I'm getting: Foo.txt Foo_001.txt Bar.txt Bar_001.txt Bar_002.txt How can I achieve that, without running Advanced Renamer a second time to remove the “00”? |
#2 : 08/04-23 12:49 David Lee
Posts: 1125
|
The Collision Rule will always zero-pad an incrementing number to at least 3 digits.
The easiest solution is to automatically reload all the files, when you run the batch, and then remove the zero-padding using a Renumber method. Otherwise, if you want to avoid the use of a second pass, you will need to create your own Collision Rule using a Script method. Allocate an object in the Pre batch script, to keep track of duplicate filenames: var names = {}; Then, in the main script: name = item.newBasename; if(names[name]) return name + names[name]++; else names[name] = 1; |
#3 : 09/04-23 04:59 David Lee
Posts: 1125
|
Reply to #2:
My previous solution will consider identical filenames to be duplicates even if they have different extensions. To fix this, modify the main script as follows: name = item.newName; if(names[name]) return item.newBasename + names[name]++; else names[name] = 1; |
#4 : 12/04-23 10:27 David Tiede
Posts: 4
|
Reply to #3:
Nice. Thanks for pointing out. I'll use the script then. |
#5 : 18/04-23 17:31 Bart Kestelyn
Posts: 9
|
Reply to #1:
You shouldn't want that, as you'll get unreliable sorting dependent on your OS of choice and its ability to differentiate between 1 and 10 (2 & 20, 3 & 30, ...) |
#6 : 19/05-23 15:20 David Tiede
Posts: 4
|
Reply to #5:
I know. In my case, I don't have more than 10 files in one group. |