Path: news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: The Natural Philosopher Newsgroups: comp.os.linux.misc Subject: Re: Case Insensitive File Systems -- Torvalds Hates Them Date: Wed, 7 May 2025 12:17:40 +0100 Organization: A little, after lunch Lines: 48 Message-ID: References: <20250428111242.00007426@gmail.com> <6813f997@news.ausics.net> <68194581@news.ausics.net> <681aa121@news.ausics.net> <3aorelxelu.ln2@Telcontar.valinor> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Wed, 07 May 2025 13:17:41 +0200 (CEST) Injection-Info: dont-email.me; posting-host="7ce086d2f75924ae5766c589640c187d"; logging-data="1045149"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/c1aOwK6iQWH1gy0NVPB3Zip3m6bdlyBc=" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:7Z6qaniCVq34hWD+IbVRg2P3gtk= In-Reply-To: <3aorelxelu.ln2@Telcontar.valinor> Content-Language: en-GB On 07/05/2025 11:12, Carlos E.R. wrote: > On 2025-05-07 12:00, Richard Kettlewell wrote: >> not@telling.you.invalid (Computer Nerd Kev) writes: >>> Rich wrote: >>>> Computer Nerd Kev wrote: >>>>> It could have been the same with ext* forbidding newlines (also tmpfs >>>>> etc.).  Then you'd only have to worry about handling newlines in the >>>>> rare case of reading from some non-Linux filesystems like UFS. >>>> >>>> Could ext* have forbade newlines?  Yes.  But that would have gone >>>> against years of Unix tradition at the time had it done so.  Since >>>> Linux began as a "clone of Unix" it was only natural for it to inherit >>>> Unix traditions as to filenames (any byte value other than ASCII NULL >>>> and ASCII forward slash being allowed). >>> >>> Well the original quote from Torvalds was about case insensitive >>> filesystems, which also already have a tradition, but he doesn't >>> like them, with good reasons. I feel there are valid reasons to >>> dislike newlines in filenames too. Maybe that would have been too >>> radical for a UNIX-based OS filesystem, but in practice I can't see >>> how it would have caused much trouble, and it would have avoided >>> needing lots of special handling for newlines in software. >> >> Forbidding newlines in extfs and its successors would be straightforward >> indeed - no harder than forbidding ‘/’ in filenames. But as well as >> swimming against the Unix tide it wouldn’t actually eliminate the >> higher-level problem that shell copes badly with filenames with spaces, >> newlines, etc, since there’s more to life than Linux’s native >> filesystem. Early versions of Linux used the Minix filesystem, and today >> the kernel includes a large collection of ‘foreign’ filesystems. >> >> Using almost any other language than shell, on the other hand, makes the >> problem go away. > > Except if you hardcode a filename inside a C program, for instance. You > still have to escape the quotes. > That's a different issue: The solution is to construct the name as an octal character array. -- The higher up the mountainside The greener grows the grass. The higher up the monkey climbs The more he shows his arse. Traditional