exifdate: automatically rename .jpg files using the exif date information inside the image
exifdate -- rename .jpg files by using the exif date information inside the image
USAGE: exifdate [-h] [-c C][-p] filename1.jpg ...
exifdate can be used to sort and archive your various
digital images. The file names are constructed such that they
sort automatically in time order in your file manager.
The date/time information is read out of the image exif data.
Example: exifdate *.jpg
Author: Guido Socher (homepage: http://tuxgraphics.org/~guido/ )
guidosocher (at) fastmail.fm
Copyright: Guido Socher, BSD style license, the same licence conditions
as easyexif, see easyexif/LICENSE.txt
exifdate was written to be the C++ brother of exiftimestamp
It offers the same functionallity as exiftimestamp but is
much easier to install on small systems as it does not require
a perl installation.
exifdate requires only a very basic C++ compiler and has
a very small footprint. It's very fast.
The exifparser use by exifdate is based on easyexif ( https://code.google.com/p/easyexif/ )
Pre-compiled binaries for Linux, Mac and Windows:
There are ready to use executables in the directory bin-precompiled/
If you are not sure which one to use (32bit/64bit/static/stdcpp/...) then simply try
which one runs and executes on your system.
Note that I can not always update all binaries to the latest version. You might have to compile
from the source code if you really want the latest version.
Linux/Mac:
cd bin-precompiled/
./the-name-of-the-file
Windows:
cd bin-precompiled/
the-name-of-the-file
Installation (linux):
--------------- option 1) use a pre-compiled executable:
You can see if any of the files in the bin-precompiled/
runs on your computer. Just copy the one that works into /usr/bin
Example:
cd bin-precompiled/
# test it:
./exifdate-linux-32bit-static-stdcpp
# if it works then install it:
cp -p ./exifdate-linux-32bit-static-stdcpp /usr/bin/exifdate
------------------- option 2) compile from source code:
Compile and install from source code:
type:
make
to install type (linux only):
make install
Installation (mac OS):
--------------- option 1) use a pre-compiled executable:
You can see if any of the files in the bin-precompiled/
runs on your computer. Just copy the one that works into /usr/bin
and into the ./Applications/exifdate.app/Contents/Resources/ directory
Example:
cd bin-precompiled/
# test it:
./exifdate-macosX-10.8.5-intel
# if it works then install it as exifdate in /usr/bin/:
cp exifdate-macosX-10.8.5-intel /usr/bin/exifdate
# copy it into the droplet exifdate.app to be able to use
# the exifdate droplet application from the finder filemanager
cp exifdate-macosX-10.8.5-intel ../Applications/exifdate.app/Contents/Resources/exifdate
# To install the application bundle (exifdate.app)
# go out of the bin-precompiled/ directory back to the top level of this
# package and then into Applications/ :
cd ../Applications/
# recursively copy the files to /Applications on your mac:
cp -a exifdate.app /Applications/
# instead of using the above "cp -a" command you can as well
# just use the finder filemanager to drag the exifdate.app folder to the desktop or
# into /Applications/ or wherever you want it.
------------------- option 2) compile from source code:
Compile and install from source code (mac):
You need a proper xcode g++ compiler (see https://developer.apple.com/xcode/ )
Add the /Applications/Xcode.app/Contents/Developer/usr/bin directory
to your path (unless it is already there):
export PATH=${PATH}:/Applications/Xcode.app/Contents/Developer/usr/bin
type:
make exifdate
To install the freshly compiled exifdate executable copy it into /usr/bin.
You can move the ./Applications/exifdate.app droplet application with the finder
filemanger to wherever you want (e.g /Applications or your desktop or the left
side bar of the finder) and then drag-and-drop images onto it in order to rename them.
The exifdate.app droplet application has a litte arrow symbol on the icon
which indicates that it is a droplet.
Installation (windows):
go with the filemanger into the directory bin-precompiled/
copy/paste the file
bin-precompiled/exifdate-windows7-static-stdcpp.exe
or
bin-precompiled/exifdate-windows7-static.exe
to your desktop. Try first the *stdcpp.exe file.
Go with the filemanger into testimages/ and
drop one of the images onto the exifdate icons on the desktop.
If it executes properly and renames the file then the
installation is done.
Using exifdate under linux and mac on the commandline (including windows 10 WSL)
I love the shell and I start everything from there (gimp, gqview,...).
To use exifdate is just a matter of running:
exifdate *.jpg
That said it is as well possible to integrate exifdate with
the filemanager and I explain the procedure for the case
of a gnome based ubuntu system (nautilus filemanager).
The exifdate.app application bundle included in this package
is a droplet. You can just drag-and-drop images onto the icon
of the exifdate droplet.
Using exifdate under linux from the nautilus filemanager
First you need to build a executable that does not exit right afer
running but asks the user to press enter to close the window.
To compile it you can type "make exifdate-prompt-to-exit" or just
"make install".
Next you need to copy the supplied exifdate.desktop file to either
/usr/share/applications/exifdate.desktop
or if you just install it for yourself
~/.local/share/applications/exifdate.desktop
cp exifdate.desktop ~/.local/share/applications/exifdate.desktop
Note: the supplied exifdate.desktop runs /usr/bin/exifdate-prompt-to-exit
thus if you decided to install exifdate-prompt-to-exit elsewhere then
adapt the path.
Next select the images in nautilus and then right click "open with".
You should find exifdate there. If not see if you can find an
open with other application entry and find exifdate there. The second
time nautilus will have learned it and offers you the exifdate application
at the top of the list.
This will now process the jpg image files with exifdate:
You see what exifdate did in a terminal window that opens.
The terminal prints at the end a "please PRESS ENTER to continue" message.
Using the exifdate.app droplet (applicatio bundle) on Mac OSX from the
finder filemanager
Select the images that you would like to rename as per exif timestamp
and drag-and-drop them on the exifdate application. It does not matter
where you have installed the exifdate.app (desktop, in the finder, under /Applications, ...) just drag-and-drop onto the app:
A message window will pop up and the images will be renamed accordingly:
Using exifdate under windows
You just select the images that you would like to
rename with exifdate in the filemanager and then you
drag-and-drop them onto the exifdate icon on your desktop.
Hold them over the icon until you see the message "open wit exifdate" and
then drop them.
A black text window will open and you see the images being renamed:
Note: in windows 10 you can also use the WSL (aka Ubuntu shell). Your c-drive and the files
for your user are at /mnt/c/Users
Version history:
1.5, 2019-08-26: - add new option -c to insert a fixed character into the serial number portion.
1.4, 2019-07-19: - accept also files ending in .jpeg (not only .jpg)
1.3, 2019-06-08: - add binaries for windows 10
1.2, 2019-01-06: - fix warning about string variable
- update pre-compiled linux 32bit binary
1.1, 2014-05-27: - chmod the files to 644 under linux and mac
- added macOS-X application Applications/exifdate.app
1.0, 2014-05-17: - initial version