Help with -sep command when importing keywords from csv

Started by jmehre, April 01, 2012, 11:57:16 PM

Previous topic - Next topic

jmehre

Hello,  Pardon me if this has been addressed already in the forums.  I looked but could not find an answer.

I am trying to import keywords into about 500 images using a simple csv file that has only 2 fields (SourceFile & Keywords).  I'm having trouble getting multiple keywords to be recognized separately.  When I run exiftool, it applies keywords but when I check them out in Bridge or Photoshop, they are just lumped into a single string. 

Here is the statement I used in Terminal:   exiftool -csv=embed_API.csv . –sep ", "  -P -overwrite_original_in_place -r -v2 -use MWG

1) Is this the correct use of -sep? I tried other delimiters and still couldn't get it to work, so I must be doing something incorrect.

2) Does it matter if the keywords field in my csv are qualified with quotes or not?  (For example, if I view the csv in Excel, it only shows keyword1, keyword2, keyword3 - but if I open the csv using TextEdit I can see that it is in fact "keyword1, keyword2, keyword3").  Could this be the reason the -sep command isn't working for me? I tried stripping out the quotes and using a different delimiter keyword1|keyword2|keyword3 but that didn't work either.

Any advice would be greatly appreciated! Thanks!




Phil Harvey

It looks to me as if you are doing the right thing.  If you could attach a sample csv fle and the exact command you are using I should be able to figure out the problem.

- 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 ($).

jmehre

Thanks for the response, Phil.  Attached is the csv I was using. 

My files are on an external drive, so when I open up terminal, I first change the default directory by saying,

cd "/Volumes/Image Library/"

Then, I ran the following statement:

exiftool -csv=embed_API.csv . –sep ", "  -P -overwrite_original_in_place -r -v2 -use MWG


Phil Harvey

Thanks.

This works fine for me to add separate keywords to the image.  The only problem is that you need a normal ASCII dash in front of the "sep" option.  The command you posted has a funny Unicode dash-like character here instead.  But if this was the problem, you should have seen the message "No SourceFile '–sep' in imported CSV database" and "No SourceFile ', ' in imported CSV database".

- 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 ($).

jmehre

Thank you! Thank you!  I retyped the statement in terminal and that seemed to work!  I had been copying/pasting the statements I was testing into a Word document and I'm guessing that's where the funny Unicode dash-like character came into existence. 

I'm seeing this kind of thing now in my terminal output:

Rewriting IPTC
    - IPTC:Keywords = 'Ann, Polar_Star, Sat_Phone, scenery'
    + IPTC:Keywords = 'Ann'
    + IPTC:Keywords = 'Polar_Star'
    + IPTC:Keywords = 'Sat_Phone'
    + IPTC:Keywords = 'scenery'

Best!

Phil Harvey

Ah. I should have guessed cutting and pasting from Microsoft Word.  Another user recently had a similar problem.

- 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 ($).