Productivity Sauce

Dmitri Popov

Some time ago, I shared a simple shell script for downloading and organizing photos. This script served me well, but it did have some limitations. For example, all settings were hard-wired into the script itself, which made it less flexible for processing photos from different cameras. To solve the problem, I've tweaked the script, so it now pulls all the required settings from a separate .cfg file. This way, I can have separate configuration files for different cameras, and all I need to do is to point the script to the right one.

The script itself is still relatively simple. It uses the source command to read parameter values from a configuration file. The name of the configuration file is specified as an argument when running the script: ./fotobasher.sh config.cfg. The rest of the script remains unchanged. First, the script creates a temporary directory and copies photos from the card into it. The script then processes the transferred photos using the exiftool command, and removes the temporary directory.

You can grab the latest version of the script from its GitHub repository. Place the fotobasher.sh and config.cfg files in a directory where you want to transfer and store photos, and make the script executable using the chmod +x fotobasher.sh command. To use the script with your specific camera model, specify the correct values in the config.cfg file, and save it under a different name. For example, if you are using a Nikon D90 DSLR, the config.cfg file would look something like this:

source_dir="/media/NIKON\ D90/DCIM/100NCD90/" model_prefix="NIKOND90" ext="NEF"

Save the file under the nikond90.cfg name, then run the script:

./fotobasher.sh nikond90.cfg

That's all there is to it.

Please enable JavaScript to view the comments powered by Disqus.

Disqus