Fun things happen whenever you upload 2 files with the same names, but differently capitalized letters to a Nas from a linux box, and then try to delete one of them from windows. It broke so hard I actually got a bsod…
I wanna “make a both filename”!
Even more annoying is that it’s very cumbersome to change the case of a file once you’ve created it.
If you accidentally create
fIle.txt
when you meantFile.txt
, the rename function does nothing … and it will keep displaying asfIle.txt
. You have to rename it to something else entirely, then rename it back to the original name with the intended case.mv old new
It actually seems like it even works in explorer nowadays. I’ll be damned, they fixed something…
Is it just me or is that more of a hinderance?
Definitely an inconvenient thing.
I absolutely fail to see the utility of having a user called Bob and bob, or a dir called Downloads and downloads. Capitalisation makes sense in code - at a glance I can know I’m looking at a Class or a var, but for system administration it has only ever wasted time, and not once made anything easier.
If capitalisation is used to indicate the start of words then it could make sense for a webserver to serve ExpertsExchange and ExpertSexChange. But yeah having 16 possible versions of “main” would be horrendous.
URLs aren’t case-sensitive though, so wouldn’t those necessarily have another kind of differentiator?
Yeah
I honestly don’t get why everyone is agreeing with Windows on this one. I just love how explicit Linux is.
file.txt is fucking file.txt. Don’t do any type extra magic. Do exactly as I’m saying. If I say “open file.txt”, it is “open file.txt”, not “open File.txt”.
The feature isn’t being able to create filenames with the same name, nobody does that. The feature is how explicit it is.
It would be so confusing to read some code trying to access FILE.TXT and then find the filesystem has file.txt
Case sensitivity is how we get SovCits……
Uh wat
Look at a lot of postings in the “insanepeoplefacebook” community. There are a lot of “sovereign citizens” who believe that when you’re born the government makes a corporation using the all caps version of your name. And that the case sensitivity of how your name appears on bills matters as they’re distinctly different people.
Ah I gotcha now. I forgot about the capitalization stuff haha!
I keep meaning to grift the SovCits, with new and exciting producta. For example, license plates with yellow fringe on them to indicate they are actually seagoing vessels portaging overland between navigable waters. You just have to drive them to a boat ramp and let their wheels touch the water from time to time, to make them subject to maritime law. This allows you to use them even for commerce without needing to register them with the DMV.
Strictly speaking, this is a limitation of the default filesystem, and not the core operating system. If you mount a NFS share that is case sensitive, it will still be case sensitive.
Technically not a limit there either since you in windows on NTFS can set a flag on a folder to make it case sensitive
fsutil.exe file queryCaseSensitiveInfo <path>
Can you apply this recursively to an entire drive? Say…
C:\
You could, but should pick a different drive than c (this will likely break a ton of stuff)
Brb adding this to my set of pranks for windows users
you can also use basically anything that’s not / in a file name as well, it’s pretty based. Meanwhile on windows you have to use SMB mappings if you don’t want your directory structure to self immolate, what a good operating system.
I recently renamed a few movie files to something with ‘:’. That worked fine on Linux, but lead to some issues on windows. With a lot of errors from next cloud for file sync and me not being able to rename them without booting back to Linux. Fun stuff
if you’re using samba file sharing across OS’s (like you should) you should use something called catia:mappings in order to solve that problem. It means shit like colon will be mapped to a different character, but there are some sane mappings out there that you can use.
It wasn’t a file share, I have one of my drives mounted in Linux and in Windows as a general storage drive in a dualboot system
oh, that’s rough. Yeah no i would still recommend using samba for that tbh.
I think you might even be able to get away with /s if you escape them properly in the filename.
Just tried. It processes the escape first and then finds the path with it. Essentially, making it look into a directory made by the characters before the
\/
.The above was when I tried:
echo "asd" > asd\/dsa
But then I tried using Dolphin (GUI File Browser) to make a file and:
❯ ls 1 2 3 4 'asd\⁄sad.txt' ❯ ls 1 2 3 4 asd⁄sad.txt
In the first one, the backslash is not the escape character, but part of the text.
Turns out Dolphin just replaces the forward slash with U+2044 “Fraction Slash” character, hence, not requiring any escape. I’d call that cheating, but it works well.
Turns out Dolphin just replaces the forward slash with U+2044 “Fraction Slash” character, hence, not requiring any escape. I’d call that cheating, but it works well.
called it, i knew someone would use illegal characters eventually.
I would have a problem if a terminal app were to do something like this, but for GUI apps, it is expected for them to make stuff easier.
And I feel like, if you were to use a slash in a file name, it would most probably be either an “or” slash or a fraction slash, so the substitution is fine in my books.illegal characters
Not sure about calling it that, considering it is a standard UTF-8 character. (0x2044 in UTF-16)
I would have a problem if a terminal app were to do something like this, but for GUI apps, it is expected for them to make stuff easier. And I feel like, if you were to use a slash in a file name, it would most probably be either an “or” slash or a fraction slash, so the substitution is fine in my books.
it’s close enough, i generally consider an “illegal” character a non typable character. Especially these alt characters that are visually hard to distinguish from others such as the forward slash for example, i believe this was the same character used for a handful of somewhat clever phishing scams.
Seems like it’s fair enough to me.
i’m not sure if you’re allowed to escape the / character, i feel like it’s blatantly illegal. But you could use the funny character set trolling thing instead, where you use a not forward slash instead. (not the \)
I’m fairly confident MacOS allows it, I’ve seen people do some Utterly Cursed shit in MacOS, but idk about Linux
maybe on macos, that might be funny, it’s probably fucky over there for some other reason anyway.
Im pretty sure it’s just explicitly illegal in linux though.
That’s a great feature, actually, it saves you from using Windows
true my mistake, how could i forget this.
you mean ntfs and fat are, not windows itself. if windows supported ext4, it wouldn’t have case sensitivity on an ext4 drive
Isn’t there an application on Windows that allows you to open ext4? You check it out on that
yes but it’s not native in windows… then again fat and ntfs isn’t native to linux either.
Yeah, but we don’t know if we can do the case sensitive thingy on that, or do we?
I’d assume we can
i doubt it would let you run .com files, or any of the other various “special” characters though.
Though we don’t include whatever bullshit DOS compat might cause problems in either of these.
I’m with windows on this one. Case insensitive is much more ergonomics with the only sacrifice represented by this meme. And a little bit of performance of course. But the ergonomics are worth it imo.
so cool story, on linux theres this thing called you can just not make case sensitive files, i do it a lot.
You can also just, use a case insensitive autocomplete setup as well. If you’re using a mouse idk why you’re even talking about this so that wouldn’t matter.
You can, but assholes out there won’t.
hence the inclusion of the case insensitive auto completion, it’s not 1982, you can use that now.
If I have two folders in my directory,
Dir1
anddir2
, what doesd <TAB>
autocomplete to and what should it do?it depends on your shell configs. In my case it sits at dir/Dir (case insensitive) waiting for me to specify 1 or 2, where as if you disable it, it’s dependent on whether or not you type d or D.
In fish it would immediately expand to dir2.
If you have “Dir1” and “DIR2” and you type “cd d”, your prompt will look like in the next picture. Fish automatically transforms “d” into “D”, because there is no dir starting with the lowercase “d”.
On a subsequent <TAB> you’ll get a list of dirs matching your prompt so far in which you choose an entry with the cursor key and enter it with the enter key.
At least on zsh it would pop both of those as suggestions you can cycle through.
deleted by creator
In the case of zsh it will quite happily do either and ask you which you meant just like if they were called Dir1 and Dir2. Also works if you have a dir1 and Dir2 in the same directory as well
deleted by creator
When you say "canse insensitive file*, do you mean lowercase files? Or is there an option?
Idk why we talking about mouses. When I’m on Linux, most of the time it’s through ssh.
either or, whatever the fuck you want really.
You can just not use capital letters if you feel like it. Works pretty well. Or just use a case insensitive shell handler for pretending it’s not actually cased at all.
Hell im pretty sure you could just render all of the text in a certain case and call it a day lol.
I can make MY files all lowercase, but 99.999% of files on my computer are not created by me. And some of them have capital letters.
do you rent out your computer to other people? I think you’ll live tbh.
They are not created by people. They are created by programs.
what kind of programs are you using that use case in filenames. Smells like a skill issue to me.
file.txt
file.TXT
file.tXt
etcsurely Git warns about stuff like this when you clone it, right ?
It tells you there’s a name clash, and then it clones it anyway and you end up with the contents of
README.MD
inREADME.md
as an unstaged change.sounds like actually a good solution … tho doesnt sound like it would work for more than 2 similarly-named files
I don’t think it’s intended as a “solution”, it just lets the clobbering that is caused by the case insensitiveness happen.
So git just goes:
- checkout content of README.md to README.md (OS creates README.md)
- checkout content of README.MD to README.MD (OS overwrites README.md)
If you add a third or fourth file … it would just continue, and file gets checked out first gets the filename and whichever file gets checked out last, gets the content.
thats better than Git just choosing a file to keep.
I sometimes run into this when I extract an archive file on Windows and there are files named with different cases but are otherwise the same. I prefer case-sensitivity because I like precision and fewer assumptions being made about a system and how it’s used.
GNU’s Not Unix
Remember: GNU/Linux
I stopped there. Enough kowtowing to the toejamophage.
This puts the win in Windows