On Tue, 14 Dec 2004, Reini Urban wrote:Chuck schrieb:Christopher Faylor wrote: | On Mon, Dec 13, 2004 at 04:52:31PM -0500, Chuck wrote: |>I don't know if this has been reported before | | It has. | The conclusion? | Don't use find on /proc.
Are there any plans to fix it? Thanks.
How? '*' is by POSIX definition an invalid filename character. '*' is by MS definition a valid registry key, which is mapped into a virtual file-system.
'*' is a valid filename character (if not, please cite the part of POSIX that claims that). AFAIK, the only invalid filename character is '/', which is a directory separator. The problem with /proc/registry is that '/' is a valid value name character, so keys like "HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/usr/bin" end up as "/proc/registry/HKEY_LOCAL_MACHINE/SOFTWARE/Cygnus\ Solutions/Cygwin/mounts\ v2'/usr/bin'", which any Cygwin program (including bash) will choke on.
Yep, sorry for wrong posts. I mixed that up with FAT/NTFS limitations. Which have nothing to do with our proc_fs.
If the findutils maintainer decides to add a /proc/registry patch to make '*' a valid filename char, other fileutils should be fixed also. ls and cat at least.
So it should be better "fixed" in cygwin. How? Make it a valid file character there? How not to break all other file-,find-,text-,shellutils then, which will have to deal with this and glob expansion.
Replace it by some other character? Which?
If there's a solution, it should probably have something in common with managed mounts...
Just a simple find patch is needed. -- Reini Urban
-- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/