Как загрузить escape-коды ANSI или получить цветные списки файлов в командной оболочке WinXP cmd?

Это связано с этим вопросом: Как получить цветной список файлов в оболочке Windows cmd?

Я пытаюсь получить, разве вы не поверите, цветной список файлов в оболочке Windows cmd. Windows XP SP2, если это имеет значение.
В старые дни DOS были небольшие программы, такие как hdir, adir и такие, которые отображали это хорошо. В настоящее время таких программ больше нет.

Однако есть ls, из unixkit-tiny или unixtools. К сожалению, он использует escape-коды ANSI для отображения цветов, а cmd не слишком хорошо справляется с ними.

Существует несколько решений, которые включают загрузку ansi.sys и command.com, но command.com не обрабатывает длинные имена файлов, и это очень медленно. Даже тогда иногда возникают проблемы с отображением цветов.

Итак, что я спрашиваю, есть ли способ получить цветной список файлов в оболочке cmd windows, кроме использования cygwin? Или есть способ получить escape-коды ANSI для работы с cmd.exe таким образом, чтобы родные ls играли хорошо?

Ответ 1

Я столкнулся с ANSICON в http://adoxa.110mb.com/ansicon/index.html ansicon github repo

Использование этого для раскрашивания вывода NAnt. ls --color обрабатывается правильно.

Исходный код предоставлен, но я его не изучил.

Ответ 2

На самом деле я считаю A + для ansicon - используйте

  • ansicon.exe -I

Устанавливает его как фильтр на ваших сеансах CMD.exe. Работает с HTTY (рубиновой жемчужиной).

: -)

Ответ 3

Вы можете запустить встроенный сервер Telnet, межсетевой экран, чтобы разрешить доступ только localhost, и использовать клиент telnet, который понимает такие escape-последовательности - даже родные. (Я знаю, уродливый хак.)