Я запускаю сценарий 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) и наслаждаться.