Здравствуйте. Решил я изучить команды командной строки и использование их в bat-файлах. В целом, основы понял, но есть одна проблема: cmd плохо обрабатывает параметры, написанные на русском языке. Например, простейший скрипт заканчивается таким образом:
Код:
@Prompt ">"
@Echo Hallo!
@PAUSE
@Set /P ProgNM="Type the program's name: "
@Runas /user:Администратор %ProgNM%
@Set ProgNM=0
@PAUSE
Пробовал советы из интернета, не помогло.
- в начале скрипта писать "chcp 1251"
- Менять кодировку файла: "BAT-ники используют кодовую страницу DOS 866 (русский), а Блокнот - кодовую страницу WINDOWS 1256 (русский)..."
- пиши в Ворде, потом - Сохранить как - Обычный текст - Сохранить - MS-DOS - OK
- а можно и в виндовом Блокноте, только выбери шрифт Terminal
- ввести "Set nls_lang=russian_cis.ru8pc866"
В первом способе пробовал писать разные кодировки, но становилось только хуже - даже латинский текст превращался в иероглифы. Вариант с Вордом - вообще не вариант, в файле я получил вот это:
Код:
@Prompt ">" <*ҐЁ@Echo Hallo!<*ҐЁ@PAUSE<*ҐЁ@Set /P ProgNM="Type the program's name: "<*ҐЁ@Runas /user:Ђ¤¬Ё*Ёбва*в®а %ProgNM%<*ҐЁ@Set ProgNM=0<*ҐЁ@PAUSE<*ҐЁ
Я понимаю, что кириллица больное место для консоли, но может есть какой-то выход? Иногда в батнике приходится писать на кириллице пути к файлам, но... Не находил ли кто-то решения проблемы?