Команда на удаление папки с невидимым именем - PullRequest
0 голосов
/ 15 сентября 2018

Так что в основном все, что я пытаюсь сделать, это написать скрипт, и в этом скрипте он удаляет папку.Теперь я знаю, что rmdir folderName нормально работает, но папка, которую я хочу удалить, - это невидимая папка, сделанная так, назвав ее 0160, удерживая нажатой клавишу Alt.Любые идеи о том, как удалить эту папку из CMD?

1 Ответ

0 голосов
/ 15 сентября 2018
@echo off
setlocal
>nul chcp 65001
rd "\\?\%cd%\ "

Удаляет папку в текущем каталоге.

Путь к папке не обрабатывается относительно использования \\?\ поэтому может потребоваться абсолютный путь, который файловая система может обрабатывать как есть. Пробел в двойных кавычках: Alt + 0160.

Кодовая страница для UTF-8 устанавливается с chcp 65001. Пакетный файл должен быть закодирован в UTF-8 без спецификации.

Использование \\?\ по аналогичной проблеме, на которую я ответил:

Пространства имен файлов Win32

Для файлового ввода / вывода префикс "\\? \" К строке пути сообщает API-интерфейсы Windows для отключения анализа всех строк и отправки строка, которая следует за ней прямо в файловую систему.

...