I named a folder the character for space, and now that I've switched over to Windows I need to rename it

I named a folder " ", the symbol for a space.

In Linux you can create folders with just a space. Now that I've switched over to Windows, I can't move the folder that has the folder named " " in it. Nor can I move anything in the folder itself, or rename the folder.

I have tried Unlocker 1.9.2, and it didn't work either. It asked me to perform the operation at reboot, I agreed and it didn't do anything.

How can I rename the folder named " " from within Windows?


Solution 1:

It's not in fact true that this is impossible on Windows. It is possible to fix this with the SFUA Utilities on the Subsystem for UNIX-Based Applications on Windows 7 (Ultimate edition). I just did so:

JdeBP ~/Desktop %mkdir ' '
JdeBP ~/Desktop %ls -ldQ ' '
drwxr-xr-x  1 JdeBP  None  0 Dec 30 16:14 " "
JdeBP ~/Desktop %mv ' ' space
JdeBP ~/Desktop %rmdir space
JdeBP ~/Desktop %

Instead of using rmdir I could have just deleted the space folder from the desktop using Windows Explorer; or done anything else, including accessing its contents (had it had any).

The problem is not Windows NT itself. It's the Win32 subsystem rules for filenames. The POSIX subsysem doesn't impose the same rules.

Solution 2:

You could try:
Rename the folder using 7-Zip


Tested on Win7 x64 with 7-Zip portable version

Steps to Reproduce:

  1. Create folder (F7) with default name: "New Folder"

  2. Rename "New Folder" to " "

  3. Rename " " back to "New Folder"


This answer is similar to this one which solve "How to delete a folder containing trailing spaces": https://superuser.com/a/366583/163596

Solution 3:

The best bet for you to use a live cd of Linux and then rename the folder and then use it windows. AFAIK and others have stated here there is no way to do this using Windows. If I could find a way I would edit my post.

Solution 4:

As noted, the problem is the Windows user interfaces, not the Windows filesystem.

If you can write in almost any programming language, and that language has a library function which will let you manipulate the filesystem, you should be able to quickly write a minimal program that will let you rename this beast.

Or, as others have noted, you can try using the wildcard approach. ? is a single-character wildcard; if you don't have any other files or directories with one-character names you could try "ren ? foo" and see whether that's enough to sneak past the special-case checks for the space character.