How to filter empty file errors ?

Started by Luuk2005, January 02, 2021, 06:13:39 AM

Previous topic - Next topic

Luuk2005

Greetings to the experts, and Happy New Years!!
Im often batch create many empty files for regexing $Filename, but errors present ugly to the screen, and make the results to be less obvious.
So with the empty-files, Im search for the GroupName to --exclude like: -s -Error -G:0:1:2:3:4:5:6:7:8

But the final group always presents as 'Error' without more sub-groups (like... ExifTool:ID-Error:Error)
Im wishing for --Error:Empty because --Error destroys them all, so instead piping through sed like ...
exiftool -v0 -p "Experiments" . 2>&1 |sed -n "/^Error:[^-]*empty/!p"

Is there better ways to filter the empty-file errors?  Like maybe if the config-file would please convert...
exiftool --empty -commands "."  --->  exiftool -v0 -commands "." 2>&1 |sed -n "/^Error:[^-]*empty/!p"

If it helps, I give ${Tag;changes} to convert like above...
"${EntireCommand; s/(.+ )--empty( .+)/$1-v0$2 2>\&1 |sed -n \x22\/^Error:[^-]*empty\/!p\x22/}"
Windows8.1-64bit,  exiftool-v12.92(standalone),  sed-v4.0.7

Phil Harvey

The tag name is "Error".  That is not a group name.  "ID-Error" is the last group name that you should see (family 6 and 7 group names don't exist for this tag).  Perhaps ExifTool should return an empty group string for non-existent groups, instead of just dropping that group name from the list.  What do you think?

But all errors have the same group, so you must check the value of the Error tag if you are interested in the specific type of error.

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

Luuk2005

Greeting Phil, and many thanks for the reply!
If empty-string returns :: like Group1:Group2::::  Im like the idea but maybe vote, because Im very different.
Sorry for the bad explanation, exiftool does properly present [Groups:ID-Error] Error: File is empty
Its really just me wishing to find something like...         [Groups:ID-Error:Empty] Error: File is empty

Its because I wish for something like --Empty:Error to conduct empty-files without errors, because -if "$Error !~ /empty/" just forbids conducting them.
I know its illogical to create a group for only one tag, so its to be expected. But is there better ways to filter only some types of errors?
Another way could be something like -if "$Error =~ /empty/" --error but this conducts only the empty-files.
Thanks again for building such a useful tool, and helping people use it.
Windows8.1-64bit,  exiftool-v12.92(standalone),  sed-v4.0.7