Agreed good speaker although sends large amounts or volumes rather of data to foreign ears is complexed and too fast. I might try a slower playback speed, good day.
Note: Those device names go back a lot further than dos. I recall them being reserved in the Whatfor FORTRAN compiler back in about 1970 -- my first programming language, FORTRAN 66.
Fun fact: If there's two files or folders with the same name with one followed by < and the other followed by >, Windows will mark whatever directory it's in as corrupted. If you were to do this in Drive C, Windows would throw the bug check NTFS_FILE_SYSTEM on boot for a few times, and then Startup Repair would remove the invalid files.
i remember a w98 bug, you were into IRC chatrooms, and someone typed mp3! /con/con/con.wav, and everyone in that room got a bsod and computer stops responding. You had no chance to continue using your computer. mp3! in IRC was an order to play instantly a sound remotely, if you got the same sound in your computer it played remotely, so, if you put a forbidden name into the file to play, it crashed remote computer instantly. There was a fix in 2000 for it. Windows Me had the bug corrected. Other names were exactly the same and CLOCK$ IFS$HLP$ too.
If you get stuck with a path length limit you can open a command prompt and use the SUBST command to map a drive letter to somewhere deep enough in the path tree. Then you can use Explorer to move (or shorten the names of) files and folders until the items are within the limit for the actual drive/volume. This will help get you out of a jam, but I *strongly* recommend against using SUBST as a permanent solution. IIRC you can also share one of the folders in the tree and it will pretty much work the same.
I could've used this advice many years ago. I don't even think it was caused by Linux but rather that Windows had allowed me to copy the files/folders in the first place.
I've used that quite a few times to get out of a jam. I've also caught malware using metafiles, even volume shadow copy functions. I've also did a net use UNC path to drive mount to get around an obscenely long path. I've also been known to do things like copy con > com1 ath0 ^Z the carat denoting control... Useful for things like label printer initialization strings, when nothing else works to reset and reinitialize the damnable temperamental things. There's a reason we old, experienced BOFH types command a higher salary! :)
I remember when I did a script for school related to a cone, and wanted to name it 'con' (Cone is romanian) but windows wouldn't let me so I had to choose a different name It's good to learn why you're not allowed to name your files like this
@@lawrencedoliveiro9104 me: well actually, if you accidentally mess up a system text file. or uninstall every single program at the same time (including the GUI). or corrupt the kernel. or-
Fun fact, if you create one of these files in a synced to OneDrive folder it will allow you - but give a notification telling you the file/folder can't be synced. Try it out!
1:00 - The reason that some Unicode characters don't work either is because Windows treats filenames with "special" (read non-ASCII) characters as long-filenames even if they're not literally "long", and when it tries to create a short-filename (8.3) entry for it, it tries to use the closest substitutes for them that it can, so when you try to create a file called LPT¹, it tries to create a SFN called LPT1 which isn't allowed, so it fails. The LFN-SFN substitution mapping has limits, so some do work. 3:00 - It's not just empty files that are stored directly in the MFT instead of in clusters, even small (
And you could cheat on the old days, wanna go to Program Files? cd \progra~1 Then, they started implementing the variables making life ever so much easier to admin the boxen. :)
To get around the deep path filename restriction while copying a deep folder to another, just leave a pointer from folder 1 to folder 2, a.k.a a shortcut..
4:00 more on this, I guess: in (as far as I know) all modern filesystems, folders and files are basically the same thing - folders are just files that contain references to other files. this lets the computer treat them more or less the same, and also that all of the usual naming restrictions on files also applies to folders.
I doubt that anything here will ever be really pertinent for my work at my computer, but it’s interesting enough, and when you have gone to the trouble of making a video like this, the least I can do is honor what you have done by watching to the end.
Fun fact: Some versions of the default Android Camera App used "aux.jpg" as the name for low-resolution previews of some images, so if you had set up automatic backups in Google Drive/Google Photos on a device with that version installed, it would create lots of undeletable files on any Windows PC that was set up to sync your Google Drive folder.
I am super meticulous with my file orginization and I use a ton of folder levels. I run into that file path length limit probably at least 2 or 3 times a month.
Possible to work around by using a tree of shortcuts instead of an actual folder, with the files and folders themselves just being in limited few directories (few because having just one folder with 'everything' is a technical issue in and off itself). Though it's just a workaround for a very sloppily written file system.
ahh yes. I remember the times when I manually fought against worms and malware that uses these forbidden names as their filenames for their payload and stuff. Battle was really tough.
And some malware embedding under restricted permissions in the registry to try to hide from the SA, with multiple processes watching each other for termination. I used to kill that crap manually, usually via a quick and dirty script, just as a hobby. Never trust the infected computer again, but it's nice to know what the miscreants were doing or trying to do.
On Windows 11, I was able to use the command prompt to rename an existing text file to LPT1.txt. Windows 11 also had no issues opening, deleting, copying, etc. the file. Out of curiosity I decided to copy it onto a USB, and plug it into a Windows XP laptop. There, it had the issues with copying it and deleting, etc. Windows XP's command prompt also did not allow renaming a file to LPT1.txt. TL;DR, on Windows 11, using these file names works better than on older versions of Windows.
The good old serial port is still widely used in industrial environments. It is still the main form of communication between maritime safety and navigation equipment. The NMEA protocol is very simple and easy to work with.
long file name (255 chars) error is something that I run into frequently at work. Civil engineering projects get to be very complex and the project names are large to begin with.
I once downloaded the movie Con Man from a torrenting site. The folder name was Con.Man.2018.1080p and after downloading it I couldn't move it nor delete it nor rename it. I learned to live with it in my computer. Until a few months ago when it dawned on me. I mean, I knew about this, I just forgot about the CON reserved word in my folder name..
Think of the meme potential with this: Cave of Wonders: INFIDELS! YOU HAVE CREATED A FORBIDDEN FILENAME! Belle: What's in the developer's directory? Beast: _Its forbidden!_
in macOS the only forbidden characters in file names are ":" and "/". ":" was used as a path seperator in really ancient versions of mac os before they switched to /. i guess they still have the ":" forbidden for backwards compatibility even though they literally removed all x86 app support from macOS for no reason. edit: macOS also has device files but they are all in /dev so you can create files/folders with those names in other folders
I remember hearing about these filenames years ago and forgot all about it. Then, just a couple of months ago, I was doing some work for a charity auxiliary, wrote some hasty notes during a meeting and tried to name the file "aux.txt". That's when I remembered that "aux" was forbidden.
I was able to make some files names that shouldn't be able to be named the way they were, Like I made a folder on my phone called "..." and used adb pull The file couldn't be deleted because windows didnt know its extension, I used 7-Zip to create an archive of it and checked "Delete file after compression"
And that name is what the script actually did. It was for controlling the particle effect that played when the player died by walking into a nanorobot swarm trap and it caused the nanites particles to swarm around the player, block the cameras view, then despawned the player, spawned in some fake dead player body parts, and then dispersed the nanites. The result was that it really did look like the player was being eaten by nanites.
3:57 i use this to keep programs from doing certain things. Ie stop a program from filling up a cache for ads (i assume to show when offline); I delete the ad folder and replace it with ad file and it can no longer save to that folder.
Ah, file path length limitations. I have encountered those as well with people who had incredibly long file names inside nested folders each with incredibly long file names as well. Good to know that there is a registry setting for that.
I used to write Bash scripts for fun, and I used NUL a lot. This video is pretty informative about the other device files. I tried PRN just now and found out it didn’t work for me.
Probably because it still tries to use a parallel port. I wonder if Windows 11 will finally get rid of some of these since it's breaking compatibility with old computers anyway.
@@spvillano I think there's actually one of these illegal names that should be excluded ASAP from the "denied" status for Windows' filenames list now: AUX! While the others old MS-DOS names: PRN, COM(1-9), LPT(1-9), NUL and CON really has no any other real use, this isn't the case with AUX! Actually there's some other uses of this word - for example, technicians / machine engineers might want to use "AUX" for a folder that contains schemes / draws for an auxiliary parts of machines, including ones fixing a broken machines / electronics, for example. There might be other non-computer instances of use of the word "AUX" as well.
Serial uses both DB9 and DB25. DB25 allowed one to have two serial connections on one cable and a few other tricks from the old serial terminal days. After all, the only way for the longest time to use a mainframe was via a serial terminal. So, buildings were festooned internally with 25 pin cables and occasionally even connectors in the walls, leading to a mux (multiplexer) room, which connected to the mainframe. Later came ethernet or broken ring with fat cabling, ethernet using coax mostly, with vampire taps. Boy, was that ugly at times! Break the tap and unbalance the line, dealing with broken, broken, who stole the token... Very fragile if someone moved furniture without telling IT.
@@Andy-jz1zw DB15 VGA port is primarily an analogue not a digital port, but pin 12 & 15 are i2c pins for monitor I.D. so technically it's a serial connector, but only for a secondary fixed function.
You can also create one of these 'Unkillable' files in the Android OS. I found this out the hard way. I'm not sure if Linux would be able to delete them but BSD UNIX could using Hex notation for the file name. I'm not sure if you can use hex notation for file naming in either the CMD she'll or the PowerShell.
Oh by the way, A few weeks ago, I took apart an old Windows Vista laptop, and I found that one of the processor chips says "AUX". does this have any relation to device drivers?
I created CON with unc after watching flytech, I tried deleting it but the command never worked; however after entering the same command 10 times it works!
Fun Fact about forbidden characters: Having a file/folder with < and another with > in the same directory will make Windows treat the folder those two are in as corrupted (Don't do it in the C: directory)
The maximum file name size means NOT the actual absolute path. You can navigate with Windows Explorer to a directory that exceeds the 254 characters and create a new folder, and a new folder within, then a file. It is even possible to copy those long paths via Explorer using two windows and copy file by file if neccessary. To copy those folders Windows has the on-board tool ROBOCOPY. It is only text-mode based but has several other features like copying from unreliable devices or network connections.
Reminds me of the good old IRC chat days, when everyone still had win95. We have sent files with these names to everyone in the chat room. And all had bluescreens.
Meanwhile for Linux the only restrictions are that you can't name a file with no name or just the Null character ... ....everything else is possible (some are annoying, and so should be avoided)
As an IT professional: The file length limit is not a edge limit. Some customers just seem to thrive on overly long and complex folder structures. Luckily, the long file name support can also be enabled per GPO.
I had a forbidden file. I had a hard drive with a Linux distro and it had the application for running Windows applications called wine. It actually created a file within its structure for corresponding drive letters (e.g. it had a file called c:) which I eventually copied my entire home drive to an external hard drive before nuking my Linux install. This file was backed up to my external drive and Windows will NOT let me remove it.
At one time the nul device existed on ALL directories. Back in the day, we would redirect all output being set to & from the device CON if all we needed was the data that was written to a separate file that we could use.
virtually every program is written assuming the old fixed path length limit. Changing the registry to enable unrestricted path lengths doesn't mean any other program will work with them so be very careful if you enable the option; programs may fail to open files, crash or worse
I'm not sure how related it is to these forbidden names but there's one other filename limitation I know of in Windows. I don't know if it's related to "." and ".." being treated as actual files but you can't start a file or folder name with a period. There's an exception to this, however, if you end it with a period as well (after the file extension for files), then it will create it with the period at the beginning. An oddity with files in particular is that Windows will ask if you want to change the file extension but it actually doesn't do so. It also has another oddity in that if you then try to rename it, it only has the beginning period so you have to add the one at the end again. I actually have no idea why this happens but it's interesting.
In a VM, I tried to install win10 and created something using the forbidden characters by booting into a Linux Live CD. All were behaving really differently. If I tried to create a folder named C:, Windows would take me to C:\ (i.e. the actual C: drive), and if I try to delete that from within Windows, it would actually try to delete the actual C: drive! Second, if I try to create folders with / and \, some made Windows refuse it's existence and some make explorer to take me into that path, e.g. if I create a folder named Windows\ in the C: drive, it would take me to the actual Windows folder. And again, deleting them would try to delete C:\Windows. Third, I tried to make folders with double quotes and Windows refused it's existence and some gave weird errors like ERROR: CRITICAL ERROR (the descriptive error name ever). Creating folders with < or > in the name did kinda the same thing as the others, but creating two folders, one with < and another with > in Desktop (say), I couldn't get access to the Desktop; when I log in to Windows, it gave me an error saying it couldn't access it. HERE'S THE SCARIEST PART: I CREATED THE TWO FOLDERS WITH < AND > IN THE ROOT OF C:\ DRIVE AND..... GUESS WHAT, IT RENDERED THE OS UNBOOTABLE! Automatic "Repair" didn't work either as it couldn't actually access the C: drive to perform repairs. The only solution was to delete the folders from within Linux Live CD.
Most likely, because the files are actually named "CON.txt" or similar, while the folders are actually named just the forbidden file name with no extension.
0:09 Funnily enough, you can create them with software written to create files with those names. The blacklist seems to be at shell level (Explorer, standard save dialogs, etc.), not on the WinAPI level. I know, because I once wrote such program in Delphi 7 that created (unremovable by any normal means) files named con in any directory I chose just to mess with the IT teacher in my high school who didn't know a thing about computers and should work elsewhere. That was on WinXP though, but I feel like it would still work. You could also create files with completely empty names (no funny unicode hijinks like a 0 width space needed) using the same method or with forbidden characters.
Dealt with many of that sort. A quick way to find out was to set attribute +s +h on a file and see if they can find and remove it. If they can, it's time to see if they're wearing the big kids shorts. ;)
An example of device files outside of windows is: /dev/devicename... It's like that in all Unix and Linux systems... An example is /dev/sda1 (device, sata device a, partition 1)
idk if someone’s already posted this, but heres a fun fact: if you create a folder with the name < and another folder with the name >, windows will think that the folder is corrupted, until you remove the two folders.
Trying to explain that path length limit for a user was always hilarious everytime he/she tried to create or copy files within the depths of an intricate tree structure on a fileshare. And by 'hilarious' I mean incredibly frustrating.
you can still access a folder if the file with no extension has the same name as the folder just when you are typing the path add a extra \ and it will move you to the folder
Dude, >PRN sounds like it's a spooler for the parallel port. I'd like to know if there's any way you're aware of to move a spool file for a printer file into another printer file, ie from _LexMark614_ to _LexMark614-2._ Is it possible to move spool files between printers or is there a way to make output queues for them instead. I hate not being able to just grab an output and gift it to another printer. I'm not worried about formatting - I grew up in a time when the device driver was the connecting rod between the keyboard and the chair.
The ability to create forbidden files using UNC is potentially a major security hole. Imagine for a second what would happen if a bad actor attempts to create a malicious executable named “COM1.exe” for instance - would be impossible for antivirus software to remove.
Your voice, pronunciation and clarity of language is really appreciated.
Agreed good speaker although sends large amounts or volumes rather of data to foreign ears is complexed and too fast. I might try a slower playback speed, good day.
True, I joke that I'm deaf in one ear and can't hear with the other, which really isn't far from the truth, as I have service connected hearing loss.
Note: Those device names go back a lot further than dos. I recall them being reserved in the Whatfor FORTRAN compiler back in about 1970 -- my first programming language, FORTRAN 66.
Damn OG, you've got some years over me in the game, my first exotic language was Lotus round about 1983. 😂
u still alive, sir?
Whoa, that’s awesome
@@kumomo_yosei 🤣
geez, you're probably the oldest person i've met in youtube.
Fun fact: If there's two files or folders with the same name with one followed by < and the other followed by >, Windows will mark whatever directory it's in as corrupted. If you were to do this in Drive C, Windows would throw the bug check NTFS_FILE_SYSTEM on boot for a few times, and then Startup Repair would remove the invalid files.
*"You know it's real FORBIDDEN When Thio uses a different font"*
Woah
Yeah use the different font
But. How?
Well there is this site that makes different fonts that you could enter into the *TITLE* box
I am not a detective but it makes no sense
I'm old enough to remember when just making the file "c:\program" would end any windows computer
Actually I got a warning on windows 10 that this path may conflict with something
i think lpt stands for Long Parallel Things
I remember deleting the file itself and instantly regret it
i remember a w98 bug, you were into IRC chatrooms, and someone typed mp3! /con/con/con.wav, and everyone in that room got a bsod and computer stops responding. You had no chance to continue using your computer.
mp3! in IRC was an order to play instantly a sound remotely, if you got the same sound in your computer it played remotely, so, if you put a forbidden name into the file to play, it crashed remote computer instantly. There was a fix in 2000 for it. Windows Me had the bug corrected. Other names were exactly the same and CLOCK$ IFS$HLP$ too.
@@eduardosantabaya5348 You could do it in AOL chat rooms too using a similar sound playing code
According to the secretary the computer says "No" but to this video I say yes! More of this!
niw
😂😉
??
@@WolfyRed As all other people that have a keyboard google "the computer says no" and you should be enlightened
Carol Beer😂
If you get stuck with a path length limit you can open a command prompt and use the SUBST command to map a drive letter to somewhere deep enough in the path tree. Then you can use Explorer to move (or shorten the names of) files and folders until the items are within the limit for the actual drive/volume. This will help get you out of a jam, but I *strongly* recommend against using SUBST as a permanent solution. IIRC you can also share one of the folders in the tree and it will pretty much work the same.
I could've used this advice many years ago. I don't even think it was caused by Linux but rather that Windows had allowed me to copy the files/folders in the first place.
I've used that quite a few times to get out of a jam.
I've also caught malware using metafiles, even volume shadow copy functions.
I've also did a net use UNC path to drive mount to get around an obscenely long path.
I've also been known to do things like copy con > com1 ath0 ^Z the carat denoting control... Useful for things like label printer initialization strings, when nothing else works to reset and reinitialize the damnable temperamental things.
There's a reason we old, experienced BOFH types command a higher salary! :)
an easier way is to switch to Linux.
Isn't there already an option to get rid of path lengths?
I remember when I did a script for school related to a cone, and wanted to name it 'con' (Cone is romanian) but windows wouldn't let me
so I had to choose a different name
It's good to learn why you're not allowed to name your files like this
You could name it c0n or C0N instead of con and CON
Windows: "I must protect you from yourself"
Linux: "Do it, I fucking dare you"
Linux: “This is not actually a problem for us.”
@@lawrencedoliveiro9104 me: well actually, if you accidentally mess up a system text file. or uninstall every single program at the same time (including the GUI). or corrupt the kernel. or-
@@bluesillybeard None of which has anything to do with “reserved” filenames, which do not exist in Linux.
@@lawrencedoliveiro9104 very good point
on the Linux installer i nearly deleted my secondary drive, but the changes weren't written THANKGOD
Fun fact, if you create one of these files in a synced to OneDrive folder it will allow you - but give a notification telling you the file/folder can't be synced.
Try it out!
12:00 : People who followed him without listening to what he had to say must have been like *Bruh*
Ah, that feel when you're old enough to actually have used device names in MSDOS.
As in "old enough that you woudln't even have EDLIN to create text or batch files, but you had to use COPY CON
Ah, that feel when you're old enough to actually have used device names in MSDOS.
Ah, that feel when you're old enough to actually have used device names in MSDOS.
*And* the feeling that computers we used to think were pretty cutting-edge are now mostly-forgotten relics of a bygone era.
This is great! As COM1 is just a file, you can read and write to a serial port from CMD! Very handy for Arduino stuff!
1:00 - The reason that some Unicode characters don't work either is because Windows treats filenames with "special" (read non-ASCII) characters as long-filenames even if they're not literally "long", and when it tries to create a short-filename (8.3) entry for it, it tries to use the closest substitutes for them that it can, so when you try to create a file called LPT¹, it tries to create a SFN called LPT1 which isn't allowed, so it fails. The LFN-SFN substitution mapping has limits, so some do work.
3:00 - It's not just empty files that are stored directly in the MFT instead of in clusters, even small (
And you could cheat on the old days, wanna go to Program Files? cd \progra~1
Then, they started implementing the variables making life ever so much easier to admin the boxen. :)
I remember DOS, where you had 8 characters max for the file name and 3 for extension. That's it.
To get around the deep path filename restriction while copying a deep folder to another, just leave a pointer from folder 1 to folder 2, a.k.a a shortcut..
1:09 Now we finally know ThioJoe's actual name
"Joe"?
@Sami Rami El Garon joe mama
Its been in many videos but ok
Jojo
"Suspect"?
TomScott made this video too, but you explain it in deeper details :)
tuoo
tuoo
Tom Scott: Why you can't name a file "Con" in Windows
I watched that one too. It’s similar (because of the same topic) but not an exact copy.
Because it can break some critical spreadsheet somewhere in the world?
And there's me thinking Con was just the real name of Windows :)
4:00 more on this, I guess: in (as far as I know) all modern filesystems, folders and files are basically the same thing - folders are just files that contain references to other files. this lets the computer treat them more or less the same, and also that all of the usual naming restrictions on files also applies to folders.
I doubt that anything here will ever be really pertinent for my work at my computer, but it’s interesting enough, and when you have gone to the trouble of making a video like this, the least I can do is honor what you have done by watching to the end.
I'm enjoying these more technical videos! Keep doing more of these!
Fun fact: Some versions of the default Android Camera App used "aux.jpg" as the name for low-resolution previews of some images, so if you had set up automatic backups in Google Drive/Google Photos on a device with that version installed, it would create lots of undeletable files on any Windows PC that was set up to sync your Google Drive folder.
Well, the last time I saw aux used as a device it was for screen printers.
I am super meticulous with my file orginization and I use a ton of folder levels. I run into that file path length limit probably at least 2 or 3 times a month.
Laughably, at work, I'm beyond meticulous in file organization. At home, I'm a syslob.
Possible to work around by using a tree of shortcuts instead of an actual folder, with the files and folders themselves just being in limited few directories (few because having just one folder with 'everything' is a technical issue in and off itself).
Though it's just a workaround for a very sloppily written file system.
You can also use wsl to create one by running touch con. rm con also works just fine.
I remember when the RSTS/E operating system on PDP-11s had similar mechanism for naming devices as files.
Everytime ThioJoe has a new upload I auto drop everything I'm doing.
Let's admit it, we all were thinking of PRN as something other than the printer
ahh yes. I remember the times when I manually fought against worms and malware that uses these forbidden names as their filenames for their payload and stuff. Battle was really tough.
And some malware embedding under restricted permissions in the registry to try to hide from the SA, with multiple processes watching each other for termination.
I used to kill that crap manually, usually via a quick and dirty script, just as a hobby. Never trust the infected computer again, but it's nice to know what the miscreants were doing or trying to do.
"Consider liking the video because not everyone does" really hit me hard
On Windows 11, I was able to use the command prompt to rename an existing text file to LPT1.txt. Windows 11 also had no issues opening, deleting, copying, etc. the file. Out of curiosity I decided to copy it onto a USB, and plug it into a Windows XP laptop. There, it had the issues with copying it and deleting, etc. Windows XP's command prompt also did not allow renaming a file to LPT1.txt.
TL;DR, on Windows 11, using these file names works better than on older versions of Windows.
I started using computers in 1982 with the Tandy TRS-80 this brings back memories. Thanks
Love Your Videos! Love From Dubai! ❤️🇦🇪❤️
there is no ae in dubai
The good old serial port is still widely used in industrial environments. It is still the main form of communication between maritime safety and navigation equipment. The NMEA protocol is very simple and easy to work with.
Well that no longer exists on modern day Laptops as the Serial Port would have quite bad quality
@@stephensnell5707 Yes, we have to use USB to serial adapters.
long file name (255 chars) error is something that I run into frequently at work. Civil engineering projects get to be very complex and the project names are large to begin with.
Tip: mount the Windows volume under Linux and use Linux file tools (e.g. cp, rsync) to copy those. Works faster, too!
I think you might need a versioning system like git
Things could be worse, you could still be forced to conform with the 8.3 character limit DOS/early WIN9X had. .
I think you can change it in the registry
Use acronyms and v.0
49 seconds ago...😂 What am I doing with my life
Nobody cares
@@SharonMessage ya ik 😂
@@DarkGamerA xD
Boutta take a dump & learn.
@@toku30 😂
Thank you for introducing me to F.Lux!
I once downloaded the movie Con Man from a torrenting site. The folder name was Con.Man.2018.1080p and after downloading it I couldn't move it nor delete it nor rename it. I learned to live with it in my computer. Until a few months ago when it dawned on me. I mean, I knew about this, I just forgot about the CON reserved word in my folder name..
Think of the meme potential with this:
Cave of Wonders: INFIDELS! YOU HAVE CREATED A FORBIDDEN FILENAME!
Belle: What's in the developer's directory?
Beast: _Its forbidden!_
...
in macOS the only forbidden characters in file names are ":" and "/". ":" was used as a path seperator in really ancient versions of mac os before they switched to /. i guess they still have the ":" forbidden for backwards compatibility even though they literally removed all x86 app support from macOS for no reason.
edit: macOS also has device files but they are all in /dev so you can create files/folders with those names in other folders
I remember hearing about these filenames years ago and forgot all about it. Then, just a couple of months ago, I was doing some work for a charity auxiliary, wrote some hasty notes during a meeting and tried to name the file "aux.txt". That's when I remembered that "aux" was forbidden.
I was able to make some files names that shouldn't be able to be named the way they were, Like I made a folder on my phone called "..." and used adb pull The file couldn't be deleted because windows didnt know its extension, I used 7-Zip to create an archive of it and checked "Delete file after compression"
Flashbacks to me a few years ago making random (long and forbidden) variable names when I was learning how to code
For a game I was making recently, I made a script named ForcePlayerToGetSavagelyEatenAliveByTillionsOfNanites.cs just for sh*ts and giggles.
And that name is what the script actually did. It was for controlling the particle effect that played when the player died by walking into a nanorobot swarm trap and it caused the nanites particles to swarm around the player, block the cameras view, then despawned the player, spawned in some fake dead player body parts, and then dispersed the nanites. The result was that it really did look like the player was being eaten by nanites.
I love to drop in and refresh things I know and learn new stuff. Thanks
3:57 i use this to keep programs from doing certain things. Ie stop a program from filling up a cache for ads (i assume to show when offline); I delete the ad folder and replace it with ad file and it can no longer save to that folder.
Ah, file path length limitations. I have encountered those as well with people who had incredibly long file names inside nested folders each with incredibly long file names as well. Good to know that there is a registry setting for that.
You make me a smarter person, thanks.
Path Length Limits, this has been pissing me off for a while and never understood what was going on. Thanks dude, appreciated :)
I spend hours shortening folder and file names just to copy files 🤦♂️
I used to write Bash scripts for fun, and I used NUL a lot. This video is pretty informative about the other device files. I tried PRN just now and found out it didn’t work for me.
Probably because it still tries to use a parallel port. I wonder if Windows 11 will finally get rid of some of these since it's breaking compatibility with old computers anyway.
@@grn1 you originally had to set what PRN was, LPT1, LPT2, COMx... I think PRN is largely depreciated in every other OS now.
@@spvillano I think there's actually one of these illegal names that should be excluded ASAP from the "denied" status for Windows' filenames list now: AUX! While the others old MS-DOS names: PRN, COM(1-9), LPT(1-9), NUL and CON really has no any other real use, this isn't the case with AUX! Actually there's some other uses of this word - for example, technicians / machine engineers might want to use "AUX" for a folder that contains schemes / draws for an auxiliary parts of machines, including ones fixing a broken machines / electronics, for example. There might be other non-computer instances of use of the word "AUX" as well.
@@ВладимирДимов-л6р and RND, aka RANDOM.
There are a bunch still reserved.
At 8:35 the connector he shows is a VGA display connector, technically not a 9 pin serial connector.
Hey, Thio... the connector shown at 08’36” is not a serial connector, but a VGA one. 🙂
The serial one appears at 08’22” (a DB9).
...
I'm sure they're still serial cables. Just different connector types
Serial uses both DB9 and DB25. DB25 allowed one to have two serial connections on one cable and a few other tricks from the old serial terminal days.
After all, the only way for the longest time to use a mainframe was via a serial terminal. So, buildings were festooned internally with 25 pin cables and occasionally even connectors in the walls, leading to a mux (multiplexer) room, which connected to the mainframe.
Later came ethernet or broken ring with fat cabling, ethernet using coax mostly, with vampire taps. Boy, was that ugly at times!
Break the tap and unbalance the line, dealing with broken, broken, who stole the token... Very fragile if someone moved furniture without telling IT.
@@Andy-jz1zw DB15 VGA port is primarily an analogue not a digital port, but pin 12 & 15 are i2c pins for monitor I.D. so technically it's a serial connector, but only for a secondary fixed function.
🤔Could be an interesting way of making sure a folder with important files doesn't get deleted.
You can also create one of these 'Unkillable' files in the Android OS. I found this out the hard way. I'm not sure if Linux would be able to delete them but BSD UNIX could using Hex notation for the file name. I'm not sure if you can use hex notation for file naming in either the CMD she'll or the PowerShell.
Fun fact : "Con" and "Nul" are insults in French which make it funny not being able to insult a file.
lel
3:17 You Could use 7-Zip as well. The directory for files: :\[SYSTEM]\...
Oh by the way, A few weeks ago, I took apart an old Windows Vista laptop, and I found that one of the processor chips says "AUX". does this have any relation to device drivers?
I created CON with unc after watching flytech, I tried deleting it but the command never worked; however after entering the same command 10 times it works!
ThioJoe: Forbidden Windows Filenames
Everyone: *tries to make the forbidden files*
Hi ThioJoe!
15:05 .Now I know why this Error used to come... THANKS
I understand the behind mechanism of Drivers and how they work. The Basic stuff.
Fun Fact about forbidden characters:
Having a file/folder with < and another with > in the same directory will make Windows treat the folder those two are in as corrupted (Don't do it in the C: directory)
in windows 10 you cant if you try to name a folder using "" windows will warn you so its not possible
@@MiniBlox_Gaming Don't name it using Windows, use something like Linux or a bootable USB.
@@FakeRDSamurai oh alright ill do it soon
Fun fact: save a file in Word for example with the following name:
@1,2.docx
Then try to rename it from File Explorer File name is like locked 😄
The maximum file name size means NOT the actual absolute path. You can navigate with Windows Explorer to a directory that exceeds the 254 characters and create a new folder, and a new folder within, then a file. It is even possible to copy those long paths via Explorer using two windows and copy file by file if neccessary.
To copy those folders Windows has the on-board tool ROBOCOPY. It is only text-mode based but has several other features like copying from unreliable devices or network connections.
Reminds me of the good old IRC chat days, when everyone still had win95. We have sent files with these names to everyone in the chat room. And all had bluescreens.
Meanwhile for Linux the only restrictions are that you can't name a file with no name or just the Null character ...
....everything else is possible (some are annoying, and so should be avoided)
Forward solidus is disallowed.
At least now I could ask my computer teacher hard questions.:)
As an IT professional: The file length limit is not a edge limit. Some customers just seem to thrive on overly long and complex folder structures. Luckily, the long file name support can also be enabled per GPO.
I had a forbidden file. I had a hard drive with a Linux distro and it had the application for running Windows applications called wine. It actually created a file within its structure for corresponding drive letters (e.g. it had a file called c:) which I eventually copied my entire home drive to an external hard drive before nuking my Linux install. This file was backed up to my external drive and Windows will NOT let me remove it.
At one time the nul device existed on ALL directories.
Back in the day, we would redirect all output being set to & from the device CON if all we needed was the data that was written to a separate file that we could use.
virtually every program is written assuming the old fixed path length limit. Changing the registry to enable unrestricted path lengths doesn't mean any other program will work with them so be very careful if you enable the option; programs may fail to open files, crash or worse
For this; instead of 'Could not copy files because no', we would do 'Could not name file because no' 🤣
Some app: *hiding the name*
System: “is this crusty crabs?”
File: “No, this is Patrick”
I'm not sure how related it is to these forbidden names but there's one other filename limitation I know of in Windows. I don't know if it's related to "." and ".." being treated as actual files but you can't start a file or folder name with a period. There's an exception to this, however, if you end it with a period as well (after the file extension for files), then it will create it with the period at the beginning. An oddity with files in particular is that Windows will ask if you want to change the file extension but it actually doesn't do so. It also has another oddity in that if you then try to rename it, it only has the beginning period so you have to add the one at the end again. I actually have no idea why this happens but it's interesting.
In a VM, I tried to install win10 and created something using the forbidden characters by booting into a Linux Live CD. All were behaving really differently.
If I tried to create a folder named C:, Windows would take me to C:\ (i.e. the actual C: drive), and if I try to delete that from within Windows, it would actually try to delete the actual C: drive!
Second, if I try to create folders with / and \, some made Windows refuse it's existence and some make explorer to take me into that path, e.g. if I create a folder named Windows\ in the C: drive, it would take me to the actual Windows folder. And again, deleting them would try to delete C:\Windows.
Third, I tried to make folders with double quotes and Windows refused it's existence and some gave weird errors like ERROR: CRITICAL ERROR (the descriptive error name ever).
Creating folders with < or > in the name did kinda the same thing as the others, but creating two folders, one with < and another with > in Desktop (say), I couldn't get access to the Desktop; when I log in to Windows, it gave me an error saying it couldn't access it.
HERE'S THE SCARIEST PART: I CREATED THE TWO FOLDERS WITH < AND > IN THE ROOT OF C:\ DRIVE AND..... GUESS WHAT, IT RENDERED THE OS UNBOOTABLE! Automatic "Repair" didn't work either as it couldn't actually access the C: drive to perform repairs. The only solution was to delete the folders from within Linux Live CD.
The scariest part
Uh what version of windows,newer ones usually delete < and > cus at this point even microsoft realises there is dumbasses
@@fitmotheyap Actually it's a really old ISO: Windows 10 19H1
@@shr1han probably that's why lul
Really Great. Video Thio
Imma try them now; after all, it's always the "forbidden stuff" that is so good! 👌🏽😈😉
For some reason, in Windows 11, I'm able to name files CON, AUX, PRN, etc. But not folders.
Most likely, because the files are actually named "CON.txt" or similar, while the folders are actually named just the forbidden file name with no extension.
0:09 Funnily enough, you can create them with software written to create files with those names. The blacklist seems to be at shell level (Explorer, standard save dialogs, etc.), not on the WinAPI level. I know, because I once wrote such program in Delphi 7 that created (unremovable by any normal means) files named con in any directory I chose just to mess with the IT teacher in my high school who didn't know a thing about computers and should work elsewhere. That was on WinXP though, but I feel like it would still work.
You could also create files with completely empty names (no funny unicode hijinks like a 0 width space needed) using the same method or with forbidden characters.
Dealt with many of that sort. A quick way to find out was to set attribute +s +h on a file and see if they can find and remove it. If they can, it's time to see if they're wearing the big kids shorts. ;)
Joe. I have a question. If i buy a new computer will most of all the setting reset? if so i would like to know which settings!
What will happen if you replace windows 10 bootmanager with windows 7 boot mgr
Idk
Could you try it?
Is this for folders as well? Then I might have to name my important folders PR0N instead of PRN...
very informative
Keep Going bro
Tom Scott did a video about this.
I had a big fat folder named con on my desktop for a few weeks until I figured out how to delete it.
If printer is connectless, then also file will be printed?
He! you should make a video on what happens erase the reserved NTFS file names! I really would like to see what happens
An example of device files outside of windows is: /dev/devicename... It's like that in all Unix and Linux systems...
An example is /dev/sda1 (device, sata device a, partition 1)
Thanks for making this video. I always wondered why.
idk if someone’s already posted this, but heres a fun fact:
if you create a folder with the name < and another folder with the name >, windows will think that the folder is corrupted, until you remove the two folders.
What if I dual boot and make a AUX.txt file in Windows Partition?
Great series of videos
Trying to explain that path length limit for a user was always hilarious everytime he/she tried to create or copy files within the depths of an intricate tree structure on a fileshare.
And by 'hilarious' I mean incredibly frustrating.
you can still access a folder if the file with no extension has the same name as the folder just when you are typing the path add a extra \ and it will move you to the folder
Dude, >PRN sounds like it's a spooler for the parallel port. I'd like to know if there's any way you're aware of to move a spool file for a printer file into another printer file, ie from _LexMark614_ to _LexMark614-2._ Is it possible to move spool files between printers or is there a way to make output queues for them instead. I hate not being able to just grab an output and gift it to another printer. I'm not worried about formatting - I grew up in a time when the device driver was the connecting rod between the keyboard and the chair.
Hey Thio, where did you get that hott wallpaper in your background desktops?
The ability to create forbidden files using UNC is potentially a major security hole. Imagine for a second what would happen if a bad actor attempts to create a malicious executable named “COM1.exe” for instance - would be impossible for antivirus software to remove.
Can you do a video about the Desktop Window Manager and Antimalware consuming so much ram/gpu
Can you make a video on where are the windows store apps located? That would be awesome.
Agreed
Yeah true I always asked me that
TJ, 8:40ish ~ IMG of "Serial port" was 15 pin "VGA Port".