group-by-date

Shell command for grouping files by dates into folders http://hub.darcs.net/thielema/group-by-date/

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

BSD-3-Clause licensed and maintained by Henning Thielemann

This program is intended for grouping photography images by date into a hierarchy of date related folders.

If you have a folder of photographies, say photos, you may run

group-by-date -r photos

The program will emit a Bash script like this one:

mkdir -p 2017/2017-06/2017-06-28 && mv photos/0001.jpeg 2017/2017-06/2017-06-28
mkdir -p 2017/2017-06/2017-06-28 && mv photos/0002.jpeg 2017/2017-06/2017-06-28
mkdir -p 2017/2017-06/2017-06-28 && mv photos/0003.jpeg 2017/2017-06/2017-06-28

You can inspect the script and if you like it, you can run it:

group-by-date -r photos | bash

If you want a different command, say copying with preservation of modification time, you can call

group-by-date --command='cp -p' -r photos

Alternatively, you can run the actions immediately, that is, without a Bash script:

group-by-date --mode=move -r photos
group-by-date --mode=copy -r photos

You can also change the target directory structure using the --format option. You can list all options and default values using --help.

Attention: Media for photographies is often formatted with FAT. This may yield trouble with respect to timezones.