Option -i (ignore specified directory name) - DIR must be case-sensitive

Started by Balou Bear, February 13, 2025, 05:03:30 PM

Previous topic - Next topic

Balou Bear

Hi

Unfortunately, I have found that with the -i option (ignore specified directory name), the name of the directory must be case-sensitive. Why does the directory name have to be case-sensitive?

Greetings from Switzerland
Balou Bear

Balou Bear

To the administrator of this forum:
In my opinion, this is a bug.
If possible, please move my message to "Bug Reports / Feature Requests".
Thank you, Balou Bear

Phil Harvey

The documentation states:

"If a full path is specified, it must match the Directory tag exactly to be ignored."

I will improve this to explicitly mention case sensitivity.

The case sensitivity is necessary for case-sensitive filesystems.

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

Balou Bear

Hi Phil

Thank you for moving my post to another board and answering my question.

But I don't understand why the full file path can be case-insensitive and a subdirectory to be excluded must be case-sensitive.
The case-insensitive spelling is also permitted for the file extension option.

I have checked this on my Windows system;
"C:\Users\Ruedi\Pictures\Scans\HDRi Raw\Img_002-001*"    -> Files are found because [b]case-insensitive[/b] spelling is possible
"C:\USERS\RUEDI\PICTURES\SCANS\HDRI RAW\IMG_002-001*"    -> Files are found because [b]case-insensitive[/b] spelling is possible
-ext "tif"                                              -> File extension "tif" is found, because [b]case-insensitive[/b] spelling is possible
-ext "TIF"                                              -> File extension "tif" is found, because [b]case-insensitive[/b] spelling is possible
-i "ALTES_ZEUGS"                                        -> Subdirectory "altes_Zeugs" is not excluded because subdirectory name must be [b]case-sensitive[/b]
-i "altes_zeugs"                                        -> Subdirectory "altes_Zeugs" is not excluded because subdirectory name must be [b]case-sensitive[/b]
-i "altes_Zeugs"                                        -> Subdirectory "altes_Zeugs" is excluded because name is spelled correctly [b]case-sensitive[/b]

I am therefore of the opinion that the case-insensitive notation should be consistently allowed for all ExifTool options that affect file system paths.

Greetings from Switzerland
Balou Bear

StarGeek

Quote from: Balou Bear on February 14, 2025, 10:47:46 AMBut I don't understand why the full file path can be case-insensitive and a subdirectory to be excluded must be case-sensitive.

Windows is case-insensitive (unless the option to turn on case-sensitive is set). Mac and Linux are case-sensitive. So a MyPictures directory would be different from a mypictures directory on Mac/Linux.
"It didn't work" isn't helpful. What was the exact command used and the output.
Read FAQ #3 and use that cmd
Please use the Code button for exiftool output

Please include your OS/Exiftool version/filetype

Balou Bear

Quote from: StarGeek on February 14, 2025, 10:53:00 AM
Quote from: Balou Bear on February 14, 2025, 10:47:46 AMBut I don't understand why the full file path can be case-insensitive and a subdirectory to be excluded must be case-sensitive.

Windows is case-insensitive (unless the option to turn on case-sensitive is set). Mac and Linux are case-sensitive. So a MyPictures directory would be different from a mypictures directory on Mac/Linux.

I realize that, but why does ExifTool behave differently with various options concerning file system paths?

I wouldn't have a problem if all these entries had to be made in correct upper/lower case. But it should only be implemented consistently case-insensitive or case-sensitive. Personally, I would prefer case-insensitive notation.

Phil Harvey

It behaves differently because

"If a full path is specified, it must match the Directory tag exactly to be ignored."

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