14

I need to do create a file with a filename such as :>?, is this possible somehow? Windows stops it.

6
  • 5
    Well each restricted character has another meaning or usage, so if a file or folder name did contain them it could cause Bad Things™ to happen. Mind if I ask why you are trying to do this?
    – DMA57361
    Sep 11, 2010 at 18:04
  • @DMA57361, when I did this a few years ago, I was testing some things. If I recall correctly, the results were amusing but I don’t recally anything specifically bad happening. At most, I was simply unable to access them. (Though I suppose it could cause trouble if for example, you happened to have files named a, b, and a>b and tried to view the last file as using type a>b. Oops.)
    – Synetech
    Nov 30, 2013 at 21:49
  • @moorecast, when I did this a few years ago, I made the files/directories with dummy names, then used a disk-editor to manually set the names in the directory entries directly. Of course that was on a FAT32 volume, so it was very easy. It would be a little harder on an NTFS volume.
    – Synetech
    Nov 30, 2013 at 21:51
  • 2
    Mind if I ask why you are trying to do this? Maybe to implement a (poor) copy-protection?
    – Synetech
    Dec 7, 2013 at 5:30
  • "I need to do create a file with a filename such as :>?" -- I doubt that you need to do that.
    – Jim Balter
    Feb 19, 2017 at 3:20

6 Answers 6

19

Unfortunately, you cannot use the reserved characters when creating folders or files due to them being part of system functions.

What I recommend you do is look through the Character Map application - You can go to run and type charmap.

from here, you may be able to find alternate symbols that look the same, for example:

(copy and paste these, you will see that they are different)

Instead of forward slash / - you can use a division symbol

Instead of Colon : - you can use the modifier letter colon

and so on!

alt text

8
  • Making it even harder to delete! :-)
    – Arjan
    Sep 11, 2010 at 18:29
  • 4
    @Arjan - only via command prompt.. even then you can use the tab key for autocomplete. Sep 11, 2010 at 18:49
  • 4
    / is a slash - not a backslash Sep 11, 2010 at 19:12
  • 1
    I used to use this trick for certain situations like when I need to put a question in a filename (why oh why did Microsoft make the question mark reserved‽ ఠ_ఠ) Unfortunately, I had to stop using any non-ASCII characters because they cause problems with things like defrag programs which for some reason seem to be unable to move files that have Unicode characters in their names. ಠ~ಠ
    – Synetech
    Nov 30, 2013 at 22:00
  • 1
    Come to think of it, this answer doesn’t actually answer the question either. There are answers below that do, so this too should just be a comment.
    – Synetech
    Nov 30, 2013 at 22:09
7

You can boot from a Linux disk (such as Knoppix), and mount the NTFS partition.

Linux has much less restrictions on files names, and will let you create such names (I have tried it).

2
  • 1
    With the caveat that you'll have a very bad time trying to do anything with that file once you're back in Windows. Jun 22, 2022 at 7:09
  • @JosephSible-ReinstateMonica: Yes, but that may actually be the point - maybe OP wants to have some type of copy-protection, or just a prank.
    – sleske
    Jun 22, 2022 at 7:17
5

Some operating systems prohibit some particular characters from appearing in file names: (Resource from Wikipedia)

/ slash used as a path name component separator in Unix-like, Windows, and Amiga systems. (The MS-DOS command.com shell would consume it as a switch character, but Windows itself always accepts it as a separator[2][vague])

\ backslash Also used as a path name component separator in MS-DOS, OS/2 and Windows (there is no difference between slash and backslash); allowed in Unix filename

? question mark used as a wildcard in Unix, Windows and AmigaOS; marks a single character. Allowed in Unix filenames

* asterisk used as a wildcard in Unix, MS-DOS, RT-11, VMS and Windows. Marks any sequence of characters (Unix, Windows, later versions of MS-DOS) or any sequence of characters in either the basename or extension (thus "." in early versions of MS-DOS means "all files". Allowed in Unix filenames,

: colon used to determine the mount point / drive on Windows; used to determine the virtual device or physical device such as a drive on AmigaOS, RT-11 and VMS; used as a pathname separator in classic Mac OS. Doubled after a name on VMS, indicates the DECnet nodename (equivalent to a NetBIOS (Windows networking) hostname preceded by "\".)

| vertical bar designates software pipelining in Unix and Windows; allowed in Unix filenames

" quotation mark used to mark beginning and end of filenames containing spaces in Windows

< less than used to redirect input, allowed in Unix filenames

> greater than used to redirect output, allowed in Unix filenames

. period allowed but the last occurrence will be interpreted to be the extension separator in VMS, MS-DOS and Windows. In other OSes, usually considered as part of the filename, and more than one full stop may be allowed.

2
  • 2
    You can safely dial down the <bold> hyperbole: it is possible to import files with illegal characters, superuser.com/questions/31587.
    – hyperslug
    Sep 11, 2010 at 18:28
  • 5
    The question isn’t why can’t I use some characters in filenames; it is how can I force the use of reserved characters. As such, this answer is an answer to a different question. At most, this should be a comment with a link to the Wikipedia article.
    – Synetech
    Nov 30, 2013 at 22:10
3

The only way is to manually edit the hard drive using a program like HxD. If you do this though, most likely the files won't be accessible by any program. For example, if you tried to open a file named abc\def.txt, you'd get a message that the directory abc doesn't exist.

1
  • +1 This is how I did a while back. I was easily able to use every single reserved character by directly editing the FAT directory entries. (It’s also possible in NTFS, but slightly more involved.)
    – Synetech
    Nov 30, 2013 at 22:05
3

You can install the Subsystem for Unix Applications if you're on Ultimate or Enterprise. From there you can create such names.

0

You can do this in git bash.

mkdir "*"

asterisks show as • though :/

3
  • That's not a reserved character on Linux. Feb 5, 2021 at 16:44
  • Probably should have specified, the windows application git bash. Besides, in the question, 'windows' is specified. Oct 31, 2021 at 21:11
  • This doesn't do what you think it does. If you try to create a filename with an illegal character in git bash, you'll actually get a Unicode private use character in place of it (U+F02A in place of *), that then gets translated back when you try to access it from there. But as far as native Windows programs are concerned, it really is the private use character in the name. Jun 22, 2022 at 7:08

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .