Skip to main content

Easily rename multiple files ending with incrementing numbers.

Project description

multi-rename

PyPI Release GitHub Release License

A python module for renaming multiple files in a directory to a common format ending with incrementing numbers. The increment start and gap between increments is configurable, and a separator string can be specified to be inserted between the new name and the incrementing number.

It also supports adding a prefix or suffix to each file in a directory, with options for a separator strings.

For both full renaming and prefix / suffix renaming, a list of file extensions can be provided as a filter to ignore these files for renaming.

Installation

Install using pip:

pip install multi-rename

Usage

from multi_rename import renamer

# Fully rename all the files with incrementing file numbers, exlcuding any html files
renamer.full_rename(dir_path='/path/to/dir/here', new_name='new_file_name', filter_ext='html')

# Add a prefix to all the files with an underscore separator, excluding any txt files
renamer.add_prefix(dir_path='/path/to/dir/here', prefix='prefix_to_add', sep='_', filter_ext='txt')

# Add a suffix to all the files with a hyphen separator, excluding any pdf files
renamer.add_suffix(dir_path='/path/to/dir/here', suffix='suffix_to_add', sep='-', filter_ext='pdf')

Example

Folder structure with sample files

expenses.xlsx
report.pdf
essay.docx
webpage.html
...

Full rename

renamer.full_rename(dir_path='/home/dir_path/', new_name='print-this', sep='-')

This will rename all the file names in dir_path to print-this followed by a hyphen and incrementing numbers:

print-this-1.xlsx
print-this-2.pdf
print-this-3.docx
print-this-4.html
...

Adding a prefix

renamer.add_prefix(dir_path='/home/dir_path/', prefix='v1', sep='-')

This will rename all the file names in dir_path to start with v1-:

v1-expenses.xlsx
v1-report.pdf
v1-essay.docx
v1-webpage.html
...

Adding a suffix

renamer.add_suffix(dir_path='/home/dir_path/', suffix='old', sep='_')

This will rename all the file names in dir_path to end with _old:

expenses_old.xlsx
report_old.pdf
essay_old.docx
webpage_old.html
...

Changing file extensions

renamer.change_extension(dir_path='/home/dir_path/', new_ext='txt', filter_ext='html')

This will change all the file extensions in dir_path to .txt, except any .html files:

expenses.txt
report.txt
essay.txt
webpage.html
...

Contributing

If you have any bug fixes / useful feature additions, feel free to fork this repository, make your changes and drop in a pull request.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

multi-rename-0.0.4.tar.gz (4.3 kB view details)

Uploaded Source

Built Distribution

multi_rename-0.0.4-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file multi-rename-0.0.4.tar.gz.

File metadata

  • Download URL: multi-rename-0.0.4.tar.gz
  • Upload date:
  • Size: 4.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.7.7

File hashes

Hashes for multi-rename-0.0.4.tar.gz
Algorithm Hash digest
SHA256 d0f6893b39082f577875d7e3dcc9a2ae7f30e5bb44113b155218ab0a8266fbc1
MD5 b1c4765d851f140f00832a8be16b1000
BLAKE2b-256 4e945002f61ccd45da37975b604b6e6ada6d59918bee0d73b43be93bb1d22cfe

See more details on using hashes here.

File details

Details for the file multi_rename-0.0.4-py3-none-any.whl.

File metadata

File hashes

Hashes for multi_rename-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 cbe42d4303040caef2e9b1a1b81491852b1f276a0c6bba16dde8aa2816591add
MD5 904c967db113517fd42e174350380d60
BLAKE2b-256 4ba96dde64b59d444a23bb41941f79d8f83d88f89d1990535202cc3a9976884a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page