Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Natural sort with auto increment #36

Closed
gdommergue opened this issue Apr 13, 2024 · 2 comments
Closed

Natural sort with auto increment #36

gdommergue opened this issue Apr 13, 2024 · 2 comments

Comments

@gdommergue
Copy link

gdommergue commented Apr 13, 2024

Hi,
I would like to know if it's possible to rename files using natural sort (-N) + auto increment ({nr})?
I've tried the following but it doesn't work as -N seems to work only with -l.

My folder:

$ ls
10.jpg  13.jpg  16.jpg  19.jpg  21.jpg  24.jpg  27.jpg  2.jpg   32.jpg  35.jpg  38.jpg  40.jpg  43.jpg  46.jpg  49.jpg  5.jpg  8.jpg
11.jpg  14.jpg  17.jpg  1.jpg   22.jpg  25.jpg  28.jpg  30.jpg  33.jpg  36.jpg  39.jpg  41.jpg  44.jpg  47.jpg  4.jpg   6.jpg  9.jpg
12.jpg  15.jpg  18.jpg  20.jpg  23.jpg  26.jpg  29.jpg  31.jpg  34.jpg  37.jpg  3.jpg   42.jpg  45.jpg  48.jpg  50.jpg  7.jpg
$ ls -v
1.jpg  4.jpg  7.jpg  10.jpg  13.jpg  16.jpg  19.jpg  22.jpg  25.jpg  28.jpg  31.jpg  34.jpg  37.jpg  40.jpg  43.jpg  46.jpg  49.jpg
2.jpg  5.jpg  8.jpg  11.jpg  14.jpg  17.jpg  20.jpg  23.jpg  26.jpg  29.jpg  32.jpg  35.jpg  38.jpg  41.jpg  44.jpg  47.jpg  50.jpg
3.jpg  6.jpg  9.jpg  12.jpg  15.jpg  18.jpg  21.jpg  24.jpg  27.jpg  30.jpg  33.jpg  36.jpg  39.jpg  42.jpg  45.jpg  48.jpg
$ brename  -p ".*\.jpg" -r "{nr}.jpg" -N --nr-width 3 --start-num 1 -d
Searching for paths to rename...

  [OK] 1.jpg -> 001.jpg
  [OK] 10.jpg -> 002.jpg    // Expecting 2.jpg -> 002.jpg
  [OK] 11.jpg -> 003.jpg
  [OK] 12.jpg -> 004.jpg
  [OK] 13.jpg -> 005.jpg
  [OK] 14.jpg -> 006.jpg
  [OK] 15.jpg -> 007.jpg
  [OK] 16.jpg -> 008.jpg
  [OK] 17.jpg -> 009.jpg
  [OK] 18.jpg -> 010.jpg
  [OK] 19.jpg -> 011.jpg
  [OK] 2.jpg -> 012.jpg
  [OK] 20.jpg -> 013.jpg
...

Here's the result of the command i've used to list matching files using natural sort in my previous folder.

$ brename  -p ".*\.jpg" -l -N
1.jpg
2.jpg
3.jpg
4.jpg
5.jpg
6.jpg
7.jpg
8.jpg
9.jpg
10.jpg
11.jpg
12.jpg
...

Thanks!

shenwei356 added a commit that referenced this issue Apr 14, 2024
@shenwei356
Copy link
Owner

Done. Please try it.

$ brename  -p ".*\.jpg" -r "{nr}.jpg" -N --nr-width 3 --start-num 1 -d
Searching for paths to rename...

  [OK] 1.jpg -> 001.jpg
  [OK] 2.jpg -> 002.jpg
  [OK] 3.jpg -> 003.jpg
  [OK] 4.jpg -> 004.jpg
  [OK] 5.jpg -> 005.jpg
  [OK] 6.jpg -> 006.jpg
  [OK] 7.jpg -> 007.jpg
  [OK] 8.jpg -> 008.jpg
  [OK] 9.jpg -> 009.jpg
  [OK] 10.jpg -> 010.jpg
  [OK] 11.jpg -> 011.jpg
  [OK] 12.jpg -> 012.jpg
  [OK] 13.jpg -> 013.jpg
  [OK] 14.jpg -> 014.jpg
  [OK] 15.jpg -> 015.jpg
  [OK] 16.jpg -> 016.jpg
  [OK] 17.jpg -> 017.jpg
  [OK] 18.jpg -> 018.jpg
  [OK] 19.jpg -> 019.jpg
  [OK] 20.jpg -> 020.jpg

@gdommergue
Copy link
Author

Working as expected on my side, thanks for the quick feedback and update!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants