Показать полную графическую версию : [решено] Удаление папки с иероглифами в названии
Как удалить папку имеющую в названии Кирилл??
RD /s /q Кирилл
Не срабатывает.
Попробуйте обрамить кавычками имя каталога:
https://i.imgur.com/zx3kgXK.png
Sisin, если у вас стоит сторонний диспетчер файлов типа FAR или Total Commander — отключить в нём показ длинных имён файлов и удалить по короткому имени (которое ничем не будет напоминать длинное).
Если не стоит — воспользуйтесь штатными средствами командного процессора Windows, т.е. cmd.exe, запустив его с правами администратора. Войдите в папку, в которой лежит ваш каталог со странным именем, и выполните команду
dir /AD /X
В одной из строк результата будет видно в конце "странное" имя (кстати, вполне возможно что из-за различия кодировок отличающееся от того, что вы видите в Windows), а перед ним — короткое их 8 символов. Здесь же сразу удаляете папку по короткому имени.
Пример на скриншоте, по короткому имени удаляется каталог с длинным именем Пробный каталог, лежащий в каталоге C:\TEMP.
http://mwz-ru.homeserver.com/tests/dirlong.gif
Попробуйте обрамить кавычками имя каталога: »
Мне надо через bat, а в нем в кавычках выдает синтаксическую ошибку или не удается найти файл.
mwz, в данном случае нет такой необходимости. Ни для Far Manager'а, ни для Total Commander'а, ни для самого интерпретатора команд, ни для Проводника.
а в нем в кавычках выдает синтаксическую ошибку. »
Sisin, поскольку в имени наличествуют символы, которые отсутствуют в кодовой странице OEM/866, пакетный файл Вам придётся сохранять в кодировке ANSI/1251, а для удаления воспользоваться временным переключением кодовой страницы:
@echo off
setlocal enableextensions enabledelayedexpansion
>nul chcp 1251
rd "Кирилл"
>nul chcp 866
endlocal
exit /b 0
С ключами /s /q все сработало, благодарю.
Блин, а названием вроде ������ не срабатывает.
Блин, а названием вроде ������ не срабатывает. »
Естественно, коллега, ведь указанные символы отсутствуют и в кодовой странице ANSI/1251 — это юникод.
В данном случае сохраняете пакетный файл в UTF-8/65001 без BOM:
@echo off
setlocal enableextensions enabledelayedexpansion
>nul chcp 65001
rd "������"
>nul chcp 866
endlocal
exit /b 0
Но тут могут возникать проблемы с другими частями пакетного файла.
т.е. в одном bat эти два никак не объединить??
Sisin, ну, почему же, символы «РљРёСЂРёР»Р»» входят в кодовую страницу UTF-8/65001 и потому можно сохранить пакетный файл именно в ней:
@echo off
setlocal enableextensions enabledelayedexpansion
>nul chcp 65001
rd "Кирилл"
rd "������"
>nul chcp 866
endlocal
exit /b 0
https://i.imgur.com/48Vjckp.png
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.