Re: getting the on-disk case for a path

2025年8月08日 15:21:22 -0700

On 2025年08月08日 00:53, Thomas Wolff via Cygwin wrote:
Am 08.08.2025 um 02:31 schrieb Jeremy Drake via Cygwin:
On a case-insensitive but case-preserving filesystem, is there a Cygwin
API to get the on-disk case for a given path? It seems like `realpath`
ought to do it but running
$ touch case-test
$ realpath CASE-TEST
returns CASE-TEST.
On the command line, you could use
ls | grep -i
Regardless, canonicalize_file_name or realpath may not
be what I want because it would dereference symlinks.
Background: I'm trying to debug some test failures in Clang, due to a
warning that's supposed to be issued when you #include "foo.h" but the
file on disk that it opened is "Foo.h".
Looks like if you use wildcards, it should work correctly:
$ lsattr -dl .
. ---
$ l *_exit*
_Exit.2 _exit.3
$ l _exit.?
_Exit.2 _exit.3
$ l _exit.[23]
_Exit.2 _exit.3
$ l *EXIT-TEST*
exit-test
$ l *exit*
_Exit.2 _exit.3 EXIT exit-test
also, you could just opendir(3)/readdir(3)/closedir(3) and strcasecmp(3).
--
Take care. Thanks, Brian Inglis Calgary, Alberta, Canada
La perfection est atteinte Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add
mais lorsqu'il n'y a plus rien à retrancher but when there is no more to cut
 -- Antoine de Saint-Exupéry
--
Problem reports: https://cygwin.com/problems.html
FAQ: https://cygwin.com/faq/
Documentation: https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple

Reply via email to