[Digikam-users] Thank you!
John Bestevaar
Josephus at people.net.au
Fri Mar 9 14:59:05 GMT 2012
Thanks very much Guy. I have Ubuntu 10.04 and Digikam 1.2.0 but as an
visual artist aged 65 and therefore late coming to computers, i have
next to no skills with the command line, scripts etc or understanding
what the..... is actually going on there.
However.. I am convinced of the argument that image meta data can be a
powerful way to control images. Embedding QR codes in the metadata comes
to mind. I have read Phil Harvey's website and agree with him in
principle even though i cant use his tool.
My own website building project would certainly be much better if the
images metadata GUI tools were available even if i had to pay for them.
Cheers JohnB
On 09/03/12 11:09, Guy Stalnaker wrote:
> John asked about the two tools I used for my image collection
> restore/rename. One was digikam of course. The other is a commandline
> shell script that uses exif_tool:
>
> http://www.sno.phy.queensu.ca/~phil/exiftool/
>
> It's available for Win/Mac/*Nix. I'm using Linux (kubuntu 11.10) and
> the script below is what uses exif_tool and a bit of *nix magic. The
> gist of it is using output from exif_tool
>
> exiftool -S -d "%Y/%m/%d/DSCN_%Y%m %dT%H%M%S" -EXIF:DateTimeOriginal
> $file
>
> parsed through awk
>
> awk '{print $2}
>
> to isolate just the date/time output, which is then added to a string
> to form a filename path:
>
> $HOME/Pictures/<awk_output>
>
> which is assigned to a variable DEST.
>
> That variable is the new path/filename. The install command is what
> actually renames the input file and does the move. If a file already
> exists with the name, the install command will not overwrite the
> existing file, but will append ~#~ to the end fo the file being moved,
> with # replaced the a real number.
>
> The shell script is very basic and could with a bit of work be more
> elegant but it is functional and at present I'd rather just use it and
> futz with it. If you're familiar with using commandline tools like
> this in the Linux world just copy between the <quote></quote> to a
> file, set the file executable (chmod +x <filename>), and put it where
> it can be found (somewhere in the PATH env variable paths, e.g.,
> /usr/local/bin). You can remove the # before set -x and the script
> will output what it's doing as it does it):
>
> <quote>
> #!/bin/bash
> # copy image files in and below the current(!) directory to
> # ~/Pictures/YEAR/MONTH/DAY/DSCN_YYYYMMDDTHHMMSS.jpg
> #
> # requires exiftool (pacman -S perl-exiftool)
> #
> # Designate filetype on command line:
> # %> exif_rename.pl jpg|JPG|gif|GIF|png|PNG|tif|TIF|nrw|NRW|nef|NEF
> #set -x
>
> args=("$@")
>
> FILETYPE=${args[0]}
>
> if [[ $FILETYPE = "jpg" || $FILETYPE = "JPG" ]] ; then
> for file in *.jpg *.JPG; do
> dest="$HOME/Pictures/$(exiftool -S -d "%Y/%m/%d/DSCN_%Y%m \
> %dT%H%M%S" -EXIF:DateTimeOriginal $file | awk '{print $2}').jpg"
> echo "$file -> $dest"
> install --backup=numbered -v -D -m 644 "$file" "$dest" && rm -rf
> "$file"
> done
> elif [[ $FILETYPE = "gif" || $FILETYPE = "GIF" ]] ; then
> for file in *.gif *.GIF; do
> dest="$HOME/Pictures/$(exiftool -S -d "%Y/%m/%d/DSCN__%Y%m \
> %dT%H%M%S" -EXIF:DateTimeOriginal $file | awk '{print $2}').gif"
> echo "$file -> $dest"
> install --backup=numbered -v -D -m 644 "$file" "$dest" && rm -rf
> "$file"
> done
> elif [[ $FILETYPE = "png" || $FILETYPE = "png" ]] ; then
> for file in *.png *.PNG; do
> dest="$HOME/Pictures/$(exiftool -S -d "%Y/%m/%d/DSCN_%Y%m \
> %dT%H%M%S" -EXIF:DateTimeOriginal $file | awk '{print $2}').png"
> echo "$file -> $dest"
> install --backup=numbered -v -D -m 644 "$file" "$dest" && rm -rf
> "$file"
> done
> elif [[ $FILETYPE = "tif" || $FILETYPE = "TIF" ]] ; then
> for file in *.tif *.TIF; do
> dest="$HOME/Pictures/$(exiftool -S -d "%Y/%m/%d/DSCN_%Y%m \
> %dT%H%M%S" -EXIF:DateTimeOriginal $file | awk '{print $2}').tif"
> echo "$file -> $dest"
> install --backup=numbered -v -D -m 644 "$file" "$dest" && rm -rf
> "$file"
> done
> elif [[ $FILETYPE = "nrw" || $FILETYPE = "NRW" ]] ; then
> for file in *.nrw *.NRW; do
> dest="$HOME/Pictures/$(exiftool -S -d "%Y/%m/%d/DSCN_%Y%m \
> %dT%H%M%S" -EXIF:DateTimeOriginal $file | awk '{print $2}').nrw"
> echo "$file -> $dest"
> install --backup=numbered -v -D -m 644 "$file" "$dest" && rm -rf
> "$file"
> done
> elif [[ $FILETYPE = "nef" || $FILETYPE = "NEF" ]] ; then
> for file in *.nef *.NEF; do
> dest="$HOME/Pictures/$(exiftool -S -d "%Y/%m/%d/DSCN_%Y%m \
> %dT%H%M%S" -EXIF:DateTimeOriginal $file | awk '{print $2}').nef"
> echo "$file -> $dest"
> install --backup=numbered -v -D -m 644 "$file" "$dest" && rm -rf
> "$file"
> done
> else
> echo "No image files found."
> fi%
> </quote>
>
> On 03/07/2012 03:05 AM, John Bestevaar wrote:
>> Hi Guy
>> Would you let us know the names of the two tools you used?
>> Your scenario is one at least some of us may also encounter.
>> Cheers John Bestevaar
>>
>> On 07/03/12 16:13, Guy Stalnaker wrote:
>>> *nix magic
>> _______________________________________________
>> Digikam-users mailing list
>> Digikam-users at kde.org
>> https://mail.kde.org/mailman/listinfo/digikam-users
>
More information about the Digikam-users
mailing list