1

Я запускаю сценарий windows cmd из консоли windows и перенаправляю вывод в файл с помощью mycommand.cmd > 'filename ' 2>&1 проблема в том, что когда я пытаюсь прочитать этот файл, используя less в cygwin, он говорит, что файл может быть двоичным и затем не может обнаружить кодировку. Я могу открыть и увидеть файл правильно, если я открою его, скажем, через notepad++, он показывает, что файл имеет кодировку USC-2 (BE). Есть ли способ сделать less чтобы понять файл и правильно его отобразить?

1 ответ1

0

Если ожидается, что выходные данные будут в основном ASCII, вы можете просто удалить NUL с помощью

tr -d '\0'

Возможно, вы могли бы попытаться определить, можно ли установить $ LANG в качестве локали UTF-16, но я не совсем уверен, и у меня нет под рукой установки cygwin, чтобы попробовать это; в противном случае вы можете использовать iconv(1), чтобы сделать преобразование, установить $ LANG в какое-то вменяемое значение (то есть локаль utf8) и наслаждаться.

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