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

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

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

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

Папку нельзя удалить, потому что это удалит также все подпапки. Также не работает denying List folder contentтолько для . Тогда запрет применяется и к родительской папке.This folder

введите описание изображения здесь

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

введите описание изображения здесь

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

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

решение1

РЕШЕНО

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

Я только что попытался создать свое Angular-приложение следующим образом:

ng build --outputpath=.../public

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

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

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

Бум — папка исчезла.

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

Дополнительная информация для пользователей, не являющихся Angular

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

  2. Затемnpm install -g @angular/cli

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

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

  5. Скопируйте все из mockprojectпапки туда, где у вас находится...

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

  7. npm run build. Это приведет к ошибке.

Теперь у вас нет папки ....


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

решение2

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

У моего коллеги есть каталог "..." в корне диска 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.Но это информация для программиста.)

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

Из обсуждения «Соответствует ли этот ответ вопросу?»:

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

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

И вот что вы видите с помощью «dir»:

cmd с "dir ...": Пустой каталог

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

решение3

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

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

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

решение4

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

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

Связанный контент