Я использую grep для поиска шаблонов, которые работают правильно. Однако, когда я перенаправляю вывод в любой файл, вывод искажается из-за кодировки.

Есть ли способ заставить bash в windows выводить файл в обычной кодировке UTF-8, чтобы обычные текстовые редакторы могли правильно его прочитать?

РЕДАКТИРОВАТЬ: Это выглядит так, когда я перенаправить вывод результатов grep в любой файл:

[35m[KFile.txt[m[K[36m[K:[m[K[01;31m

У меня установлена последняя версия Windows, и я установил bash в режиме разработчика и включил bash.

Вывод запутался в процессе. Даже Windows-версия текстовых редакторов Linux отображает странный вывод. Однако, если я запускаю cat для файла, содержащего странный вывод. Он показывает вывод просто отлично, без проблем.

Я использую Notepad++ для просмотра результатов.

Спасибо

1 ответ1

1

Это не проблема кодирования. Программа, чей вывод вы захватываете, выдает управляющие коды ANSI для установки позиции курсора, цвета переднего плана и т.д.

Когда вы используете cat управляющие коды обрабатываются tty и поэтому не отображаются в необработанном виде.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .