Как избавиться от папки, содержащей всего три точки [...] (указывая на родительскую папку)

На (немецком) сервере 2008 мы нашли папку с именем G:\Daten\Büro_GL\...

При входе в папку ... в проводнике Windows он просто указывает на свою родительскую папку (G:\Daten\Büro_GL).

Папка не может быть удалена, поскольку она также удалит все подпапки. Также denyingList folder content только для This folder не работает Затем deny применяется и к родительской папке.

Папка [...] является папкой, а не символической ссылкой:

Мы хотели бы избежать перемещения содержимого папки, чтобы не прерывать рабочий процесс в продуктивной системе.

(Мне также интересно узнать, как можно создать такую ​​папку)

4 ответа

Решил это мой коллега, к сожалению, я закрыл cmd, прежде чем понял это.. Я напишу то, что я помню..

Мой CoWorker получил каталог "..." в корне C: Итак, я попробовал это:

dir "C:\...\"

И пустой каталог был показан. Так что

rmdir "C:\...\"

удаляет каталог

Немного предыстории:

API-интерфейсы Windows File-IO сначала вызывают проверку имени файла. И "..." было пронизано как ".." - так, иди к режиссеру. Попробуйте всплывающее окно в Exporer "C:\Windows..\ProgramData". (К вашему сведению: в API упоминается: если имя файла начинается с "\?\", Проверка отключена, и к таким каталогам можно получить доступ: 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. Но это информация для программиста.)

Редактировать:

Из-за дискуссии "Подходит ли этот ответ к вопросу?":

Я проверял это. Создан каталог. Вот как это выглядит в Explorer:

Проводник Windows несколько раз в

И это то, что вы видите с "dir":

cmd с

Итак: каталог пуст, но в проводнике отображается "неправильная" информация. Это не конфликт с учетом того, как работает Windows API: File API пытается интерпретировать имя файла / каталога. Так что переместите каталог вверх, если есть ".." и т. Д. Это то, что вы видите в окне проводника. В cmd я попытался найти строку, заставляющую Windows API не выполнять интерпретацию.

Это может произойти, только если структуры данных NTFS перепутаны, и папка станет ее собственным предком. Возможно, что водитель виноват. Сам диск может быть неисправен, или повреждение может быть просто из-за космического луча.

Одна работа chkdsk Утилита предназначена для очистки папок, которые буквально содержат самих себя - циклы внутри структуры папок. ( Источник.) С chkdsk /? говорится, что /C пропускает проверку циклов, можно сделать вывод, что нормальным поведением является их исправление.

Бежать chkdsk /f D: в командной строке с повышенными правами, чтобы исправить проблему, а также любые другие несоответствия. Громкость во время ремонта придется отключить. Если это загрузочный том, вам нужно перезагрузиться после планирования проверки диска.

На как ... папка может быть создана: я случайно создал ее, используя 7-zip (18.05), определив имя архива ...\filename.7z,

К счастью, каталог можно переименовать с помощью 7-zip и впоследствии удалить.

Решено

Я просто случайно создал папку с 3 точками. ....

Я просто попытался создать свое угловое приложение вот так:

ng build --outputpath=.../public

Обычная команда Windows не удалит его.

Я только что понял, что если команда ng cli может создать папку, она также может удалить ее.

Я только что сделал намеренную ошибку в своем коде и выполнил ту же команду.

Бум - папки пропало.

Это может кому-то помочь.

Дополнительная информация для неугловых пользователей

  1. установите npm и перейдите по пути, где у вас есть ... файл

  2. потом npminstall -g @angular/cli

  3. ng new mockproject. Это создаст mockproject папка на вашем пути.

  4. Отредактируйте package.json и добавьте в строку "build" --outputpath=.../public

  5. Скопируйте все в mockproject папку туда, где у вас есть ...

  6. редактировать app.module.ts и добавить туда какие-то мусорные символы (допустить ошибку в проекте)

  7. npm run build. Это выдаст вам ошибку.

Теперь у тебя нет ... папка.


Предыстория: я думаю, что ngиспользует posix - поэтому он может создавать эти системные файлы. Я думаю, что любой инструмент posix, такой как sygwin, может удалить эти файлы.

Причина, по которой вы видите... такое поведение, связана с тем, что слой совместимости win32 приводит к... всегда идет к прародителю текущей папки (он имитирует поведение NetWare, но случайно применяется к локальным файловым системам).

Вы не можете увидеть внутри этой папки с cmd.exe или Windows Explorer. Если вы можете заставить работать Interix (эта ОС слишком старая для LUFS), вы можете пойти по этому пути. В противном случае вам придется написать много кода, используя FILE_FLAG_POSIX_SEMANTICS, чтобы открыть эту вещь и увидеть, что на самом деле внутри нее.

Другие вопросы по тегам