Exiftool in a shell

Started by philbond87, July 05, 2021, 11:02:01 AM

Previous topic - Next topic

philbond87

I'm having a bit of trouble this morning trying to run exiftool from within a shell. (I have done this successfully many times using a different development environment but am having an issue with Swift).

In Swift I run exiftool in a Process() that requires each command to be sent separately, as elements of a String array, like this:

["-G", "-s", "-u", "-makernotes:all", filePath]

However in this case the shell doesn't seem to recognize -makernotes:all as being a command.
If I enter the command array as:

["-G", "-s", "-u", "-makernotes", filePath]

It does work, however all I get is the first maker note tag (and there are, of course, many).

I realize that this is vague and certainly very specific to the environment I'm using but I was hoping that someone might be able suggest a reason why -makernotes:all isn't being recognized..

philbond87

Further testing shows that if I remove the "-U" (or "-u") the "-makernotes:all" command does work, however I am only seeing five MakerNotes tags, rather than the dozens that I can see in Terminal when I enter the command including "-U".

philbond87

To close the loop on this:

I was using an encoding that wasn't showing the data correctly. (UTF8 vs. ASCII)
When I decode using ASCII I can now see all of the tags I was expecting to find.