@lololololo

Powershell матерится на юникод?

ren "РУКРВВЕРХ! - Чужие Губы.mp3" 
# Incomplete string token.
# At file.ps1:1 char:41
# + ren "РУКРВВЕРХ! - Чужие Р“С <<<< ѓР±С‹.mp3"

rgho.st/private/88rPvDvBF/f98675d843cdc15fd153dcf4...

Локализовал до
ren "“С"

Что ему надо-то?

А это еще что за хрень?
ren '’ Р’' 1
# Rename-Item : Cannot bind argument to parameter 'Path' because it is an empty string.
# At file.ps1:18 char:4
# + ren  <<<< '’ Р’' 1


Чем еще можно переименовать файлы с юникодными именами? Бат же отлетает?
  • Вопрос задан
  • 233 просмотра
Пригласить эксперта
Ответы на вопрос 2
@azarij
В меру опытный никто
попробуйте поставить строку в одинарные кавычки:

rename-item 'РУКРВВЕРХ! - Чужие Губы.mp3'

rename-item -path 'РУКРВВЕРХ! - Чужие Губы.mp3' -newname 'new-name.mp3'

хотя там одинарная кавычка есть в имени...
тогда нужно ее пробовать эскейпить - \'

а еще можно попробовать move-item с -literalpath ключом.
Ответ написан
Vapaamies
@Vapaamies
В творческом кризисе
Мне для компилятора потребовалась собственная обработка Юникода с автоматическим распознаванием UTF-8, утилита LiteConv — из примеров кода к библиотеке. Автоматом распознает, что нужно — перекодирует, что не нужно — не испортит:

rn *.mp3

LiteConv-r825

Это если вдруг PowerShell использовать необязательно, а требуется просто переименовать файлы.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы