Это просто! Надо всего лишь прочитать 100-500 мануалов по командной строке Windows и провести 200 экспериментов по написанию bat-скриптов)
Если серъёзно, то вывести файл с текстом в формате UTF-8 можно следующим образом
@echo off set file=YourFileName cmd /u /c chcp 65001 | echo my super text1 > "%file%" cmd /u /c chcp 65001 | echo my super text2 >> "%file%" cmd /u /c chcp 65001 | echo my super text3 >> "%file%" ...
Кавычки в записи "%file%" нужны по той причине, что имя файла может содержать пробелы.
Мы вызываем CMD cо флагом /u, который сообщает, что запускаемая консоль должна возвращать результат в формате UTF-8.
Далее в этой же строке после флага /с мы передаём команду. Кстати, флаг /с означает, что после выполнения переданной команды, консоль закрывается.
Как можно заметить, мы передаём две команды, разделённых знаком |. Данный знак позволяет записать две нужных нам команды в одну строку.
Первая команда chcp 65001 устанавливает кодировку UTF-8 в запущенной консоли. (Чтобы узнать, какая текущая кодировка установлена в консоли, достаточно вызвать команду chcp без параметров.)
Вторая команда echo текст > "%HOME%\%file%" печатает соответствующий текст в файл с именем "%HOME%\%file%", где имена переменных развёртываются в путь к домашней директории и имени файла .bash_login.
Комментариев нет:
Отправить комментарий