Problem with Copy to Directory Based on Keyword Tag

Started by wpebley, June 06, 2021, 02:05:30 PM

Previous topic - Next topic

wpebley

Hi!

I have a directory full of about 5200 .jpg photo files on a Windows 10 machine.  I use tagging to organize them.  Now I want to copy photos tagged with SlideShow in the Keywords tag to a separate directory.

Inside a batch file script, I was able to successfully set the tag Keywords to SlideShow using the following command:

exiftool -keywords+=SlideShow "C:\Users\<myname>\<mypicsfolder>\%%~nxi"[/i]

However, when I try to run the following command (while in the <mypicsfolder>) to do the copy based on that tag, it gives me "Error: '-if' already exists - ./<somefilename>.jpg"... (I don't need recursive because the directory is flat, correct?)

exiftool -o . -if '-Keywords =~ /SlideShow/' '-directory=SlideShow' .

If even tried to match the case of "keywords" as shown below...

exiftool -o . -if '-keywords =~ /SlideShow/' '-directory=SlideShow' .

But that gives me:

Error: File not found - ~
Error: File not found - /SlideShow/'
Error: File not found - '-directory=SlideShow'


And I have to Ctrl-C to terminate the command.

I'm sure it's something simple, but I've tried a bunch of iterations and can't get it to work!

Any help will be appreciated!


Phil Harvey

In the Windows cmd shell you must use double quotes (") instead of single quotes (').

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).