#cli #images #organisation

app image-organiser

A tool to organise images into folders by date

5 releases

0.3.3 May 24, 2023
0.3.2 Apr 12, 2023
0.3.1 Apr 3, 2023
0.3.0 Mar 21, 2023
0.2.0 Mar 20, 2023

#419 in Command line utilities

46 downloads per month

MIT license

11KB
226 lines

image-organiser

Currently a work in progress, no files are actually copied or moved yet. If you want to use the tool, you'll have to build it yourself.

This is a simple tool I'm writing mainly for my own purposes. It organises files from my camera's SD card into folders based on the date the photo was taken. It also renames the files to a more sensible format. Initially I used Swift because that's what I'm most familiar with, but I'm now rewriting it in Rust since it's all the rage now and I've been meaning to try it for a while.

Installation

Cargo

Using cargo is the simplest way to install, simply run cargo install image-organiser

Manual

  • Clone the repo using git clone https://github.com/henrik-dmg/image-organiser.git
  • Change to the repo's directory cd image-organiser
  • Build using cargo build

Usage

# To copy the matched files to the TARGET_DIRECTORY
image-organiser copy <PATTERN> <TARGET_DIRECTORY> [SOURCE_DIRECTORY] [STRATEGY]

# To move the matched files to the TARGET_DIRECTORY
image-organiser move <PATTERN> <TARGET_DIRECTORY> [SOURCE_DIRECTORY] [STRATEGY]

The parameters are the same for both the copy and move commands.

  • PATTERN parameter is a glob pattern that matches the files you want to organise.
  • TARGET_DIRECTORY is the directory you want the files to be copied/moved to.
  • SOURCE_DIRECTORY is the directory you want to search for files in. If it's not specified, the current directory is used.
  • STRATEGY is the strategy to use when copying/moving files. If it's not specified, the default month is used.

Example: image-organiser copy "**/*.jpg" /Volumes/MySDCard ~/Pictures week

Progress

About 80% done. I've got the basic functionality working, but there are a few things I want to add before I'm happy with it.

Dependencies

~3MB
~59K SLoC