Software Engineer

determine shutter actuations for nikon d80 on linux

· by jsnby · Read in about 1 min · (209 Words)
Computers Photography

I have been shooting a Nikon D80 camera for the past couple of years. I wanted to know how many shutter actuations the camera had seen (essentially, how many pictures I had taken). This information is stored in the image’s EXIF data.

I’m running Fedora 12 on my laptop. In order to read the EXIF data, I installed the Image::ExifTool PERL module. You can do this by running the following command:

sudo yum install perl-Image-ExifTool

Once you have that installed, create a file called with the following contents(this example almost copied verbatim from the Image::ExifTool documentation):


use strict;
use warnings;
use Image::ExifTool;

my %options;

my $file=$ARGV[0] or die("No file passed in");

# Create a new Image::ExifTool object
my $exifTool = new Image::ExifTool;

$exifTool->Options(Unknown => 1);
my $info = $exifTool->ImageInfo($file);
my $group = '';
foreach my $tag ($exifTool->GetFoundTags('Group0'))
    if ($group ne $exifTool->GetGroup($tag))
        $group = $exifTool->GetGroup($tag);
        print "---- $group ----\n";

    my $val = $info->{$tag};
    if (ref $val eq 'SCALAR')
        if ($$val =~ /^Binary data/)
            $val = "($$val)";
            my $len = length($$val);
            $val = "(Binary data $len bytes)";
    printf("%-32s : %s\n", $exifTool->GetDescription($tag), $val);

Verify that the script has execute permissions: chmod 755

Now, call the script by running the following command: ./ /path/to/a/jpeg/file.jpg

That will dump all of the EXIF data contained in the file. If you are only interested in the shutter count, pipe the results to grep: ./ /path/to/a/jpeg/file.jpg | grep "Image Number"

In my case, this output:

Image Number                     : 10795

So I have taken about 11k pictures with my D80.

I know there are probably simpler ways of doing this either in GIMP, Photoshop, Lightroom, etc., but this is what works for me.