Taking many photos results in tons of files and information. How do we manage all of these files? With Adobe? No, I can’t afford Adobe. With Photos (from Apple)? No, Photos moves my files into a subdirectory structure and not easy to manage on an external storage device on the cheap.

What about using the Image Capture program sending the files directly to disk? Even better! Let us make a work-flow that we can choose from the drop down menu of the destination list.


Reasons for using this method are:

  1. it is very cheap
  2. works with the current hardware I have now
  3. results in files organized by yyyy/mm/dd/yyyymmdd-hh-mm-ss.ext
  4. does not write over existing files


Open the Automator program and choose Image Capture Plugin. Locate the item in the Library called Run Shell Script. Create a script that will process each image. I used the following:

for f in "$@"
    if [ -d /Volumes/drobo1 ]
        echo "processing $f" >> /tmp/p1.txt
		/Users/aaddleman/processImage.sh $f

The above script says the following:

  1. Go through all the files in $@
  2. Every time I see an image, assign to the variable f
  3. If the directory /Volumes/drobo1 exist
  4. echo the string “processing $f” and append to /tmp/p1.txt
  5. execute the script /Users/aaddleman/processImage.sh and pass in the $f file

Here is the processImage.sh script:

#!/usr/bin/env bash

set -x 

/usr/local/bin/exiftool -P -v2 "-FileName<FileModifyDate" \
-d /Volumes/drobo1/media_org/%Y/%m/%d/%Y%m%d-%H%M%S%%-c.%%e ${1} >> /tmp/processImage.log

The workflow

G cluster_0 import photos cluster_1 automator_workflow cluster_4 backup camera camera image_capture image_capture camera->image_capture loop_over_images loop_over_images image_capture->loop_over_images exiftool exiftool loop_over_images->exiftool mass_storage mass_storage exiftool->mass_storage crash_plan crash_plan mass_storage->crash_plan end end crash_plan->end start start start->camera
comments powered by Disqus