8

On a (German) Server 2008 we found a folder with the name G:\Daten\Büro_GL\...

When entering the folder ... in windows explorer it just points back to its parent folder (G:\Daten\Büro_GL).

The folder can't be deleted, because it would delete also every subfolder. Also denying List folder content only for This folder doesn't work. The deny then is applied to the parent folder, too.

enter image description here

The folder [...] is a folder and not a symbolic link:

enter image description here

We would like to avoid moving the content of the folder, to not to interrupt the workflow on the productive system.

(I'm also keen to know how such a folder could be created)

5
  • Can your rename the folder by selecting it, press F2 and then alter its name?
    – LPChip
    Dec 8 '15 at 11:05
  • @lpchip No can't rename it, at least while files in the sub folders are in use (closing the files would mean to log off all users from the terminal servers which we would like to avoid) Dec 8 '15 at 11:15
  • 1
    If you can't rename because files are in use, you won't be able to do anything with the files really.
    – LPChip
    Dec 8 '15 at 11:35
  • What does dir /al (not /ah) show?
    – dxiv
    Dec 8 '15 at 19:10
  • @divx "no files found" for dir /al& dir /ahl Dec 9 '15 at 7:23
1

SOLVED

I just accidentally created a folder with 3 dots. ....

I just tried to build my angular application like this:

ng build --outputpath=.../public

A regular windows command wouldn't delete it.

I just realized that, if ng cli command can create the folder, it can delete it too.

I just made an intentional error in my code and executed the same command.

Boom - the folder was gone.

This might help someone.

More info for non angular users

  1. install npm and go to the path where you have the ... file

  2. Then npm install -g @angular/cli

  3. ng new mockproject. This will create the mockproject folder in your path.

  4. Edit the package.json and add to the "build" line --outputpath=.../public

  5. Copy everything in the mockproject folder to where you have the ...

  6. Edit app.module.ts and add some garbage characters there (making an error in the project)

  7. npm run build. This will give you an error.

Now you don't have the ... folder.


Background: I think the ng uses posix - so, it can create these system-like files. I guess any posix tool like sygwin can remove these files.

2
  • Sounds good! Can I use ng build ... without having any solution to build? An example would be great! Jun 4 '20 at 18:39
  • @marsh-wiggle Added more info
    – Charlie H
    Jun 5 '20 at 5:34
3

This can only happen if the NTFS data structures get confused, causing a folder to be its own ancestor. It's possible that a driver is at fault. The drive itself could be failing, or the corruption might just be from a cosmic ray.

One job of the chkdsk utility is to clean up folders that literally contain themselves - cycles within the folder structure. (Source.) Since chkdsk /? states that /C skips the checking for cycles, it can be inferred that the normal behavior is to repair them.

Run chkdsk /f D: in an elevated command prompt to fix the problem, along with any other inconsistencies. The volume will have to go offline during the repair. If it is the boot volume, you'll need to reboot after scheduling the disk check.

2
  • Thanks. I hope we will get a slot for maintance this weekend. I will give you a feedback Dec 8 '15 at 15:18
  • The chksdsk didn't fix the problem. We will move the data to a new folder in the next longer maintance time Thanks for the its own ancestor hint. +1 Dec 14 '15 at 16:04
3

Solved this by my co worker, sadly I closed the cmd before realizing it.. I'll write the things I remember..

My CoWorker got the "..." directory in root of C: So I tried these:

dir "C:\...\"

And a empty directory was shown. So a

rmdir "C:\...\"

deletes the directory

A bit Background:

Windows File-IO APIs call at first a file name check. And a "..." was interpenetrated as ".." - so, go a director up. Try thyping in Exporer "C:\Windows..\ProgramData". (FYI: In the API is mentioned: If the filename beginns with "\?\", the check is disabled and Such directories can be accessed: Because it turns off automatic expansion of the path string, the "\\?\" prefix also allows the use of ".." and "." in the path names, which can be useful if you are attempting to perform operations on a file with these otherwise reserved relative path specifiers as part of the fully qualified path. But this is information for a programmer.)

Edit:

Because of the discussion "Fit this answer to the question?":

I've tested it. Created a directory. This is how it looks like in Explorer:

Windows Explorer multiple times in "..."

And this is what you see with "dir":

cmd with "dir ...": Empty directory

So: The directory is empty, but Explorer is showing "wrong" information. This is not a conflict considering how the Windows API works: The File API tries to do interpretation of the file / directory name. So move a directory up, if there is a "..", etc. That is what you see in the explorer view. In the cmd I tried to find a string forcing the Windows API no doing a interpretation.

4
  • If your ... directory was empty, you didn’t have the same problem as the one discussed here.
    – Scott
    Jan 25 '19 at 8:39
  • I don't see it so. Entering the "..." folder just "throws" you back to the parent directory. So this looked like there are subfolders (We had the same symptoms). You did not see the real content without "force". But you can adept this solution: cd "C:\...\" and work in there had a good chance to work. Also ren "C:\,,,\" "C:\xxx" had a good chance to work.
    – Ralph Erdt
    Jan 25 '19 at 9:26
  • (1) You say “… this looked like there are subfolders (We had the same symptoms).”  But you also said “So I tried these: — dir "C:\...\" — And an empty directory was shown.”  It seems to me that you are contradicting yourself. (2) When you said ren "C:\,,,\" "C:\xxx", did you mean ren "C:\...\" "C:\xxx"?
    – Scott
    Jan 25 '19 at 18:53
  • (1) I've extended my answer with examples. Please feel free to comment. (2) You are right, sorry for the typo. (3) I've tested the "cd" and "ren" suggestions. They did not work. :(
    – Ralph Erdt
    Jan 28 '19 at 7:05
2

On how a ... folder could be created: I accidentally created one using 7-zip (18.05) by defining an archive name ...\filename.7z.

Fortunately, the directory could be renamed with 7-zip and subsequently deleted.

1
  • I was able to rename it using Git's mv.exe in an elevated command prompt. (C:\Program Files\Git\usr\bin\mv.exe in a default Git installation)
    – cowlinator
    Dec 5 '19 at 23:05
0

The reason you see ... behaving like this is due to a win32 compatability layer thing resulting in ... always goes to grandparent of the current folder (it emulates NetWare behavior but accidentally got applied to local filesystems).

You cannot see inside this folder with cmd.exe or Windows Explorer. If you can get interix working (this OS is too old for LUFS) you can descend that way. Otherwise you're going to have to write a lot of code using FILE_FLAG_POSIX_SEMANTICS to get that thing open and see what is really inside it.

Not the answer you're looking for? Browse other questions tagged or ask your own question.