Take a directory, search image files recursively and rename them based on their creation time, producing a flat directory
Got so fed up with mobile devices creating image files named
or similar, hence having the same filenames after importing them to my
One annoying example is Sony Xperia which saves burst images in separate folders but the filenames inside those folders are always the same.
This tool will solve that step in the process when renaming and organising images.
The given directory will be searched recursively for media files and they all will be renamed to the given directory. Those directories which are touched during the operation, in case they will be empty after the rename, the directory will be renamed.
image-foldarizer for organising images by their names and counter numbers.
They can be installed for example for macOS via Brew:
brew install graphicsmagick mediainfo
In Ubuntu Linux it can be done with command:
sudo apt-get install graphicsmagick mediainfo
In Windows, the applications need to be downloaded from their sites and once installed,
their installation paths should be added in the
Path system environment variable.
Now install the
image-flatify command line tool globally, which might need increased privileges:
[sudo] npm install --global image-flatify
Command line options
image-flatify [options] <directory> [more directories] -h, --help Help and usage instructions -V, --version Version number -v, --verbose Verbose output, will print which file is currently being processed -n, --dry-run Try it out without actually touching anything -K, --keep-in-directories Keep the renamed image files in their original directory -p, --prefix String Prefix for the resulting filename, default empty -a, --append-hash Always append a hash string to the filename instead of a possible counter -l, --lowercase-suffix Lowercase the resulting file suffixes, or use as is by default -D, --no-delete-empty-directories Do not delete any directories that become empty after processing Version 2.0.0
The following command shows how the renaming would be done in the current directory, but it is
not done since the
--dry-run option is used.
image-flatify -vn .
First thing to do is to file an issue.
Linting is done with ESLint and can be executed with
npm run lint.
Unit tests are written with
tape and can be executed with
Code coverage is inspected with
can be executed with
npm run coverage after running
Please make sure it is over 90% at all times.
Licensed under the MIT license.