11

这与这个问题有关:如何在 windows cmd shell 中获取彩色文件列表?

我正在尝试获取 Windows cmd shell 中的彩色文件列表,您不相信吗?Windows 是 XP SP2,如果这很重要的话。
在过去的 DOS 时代,曾经有一些小程序,如 hdir、adir 等,它们显示得很好。如今,此类节目已不复存在。

但是,ls来自 unixkit-tiny 或 unixtools。不幸的是,它使用 ANSI 转义码来显示颜色,而 cmd 不能很好地处理这些。

有几种解决方案包括加载 ansi.sys 和 command.com,但 command.com 不能很好地处理长文件名,而且速度非常慢。即使这样,有时它也有显示颜色的问题。

所以我要问的是,除了使用 cygwin 之外,有没有办法在 windows cmd shell 中获取彩色文件列表?或者有没有办法让 ANSI 转义码以某种方式与 cmd.exe 一起使用,以便本机ls可以很好地发挥作用?

4

4 回答 4

16

我在http://adoxa.110mb.com/ansicon/index.html ansicon github repo遇到了 ANSICON

使用它为 NAnt 输出着色。ls --color 正在正确处理。

提供了源代码,但我没有检查它。

于 2009-11-18T21:21:33.280 回答
3

实际上我认为 ansicon 是 A+——使用

  • ansicon.exe -我

将其安装为 CMD.exe 会话上的过滤器。与 HTTY(红宝石)一起使用。

:-)

于 2010-09-14T13:59:38.193 回答
2

您可以启动内置的 Telnet 服务器,将其设置为仅允许localhost访问,并使用能够理解此类转义的 telnet 客户端 - 甚至是本机客户端。(我知道,一个丑陋的黑客。)

于 2009-06-03T19:16:48.370 回答
1

可以修补 cmd.exe....

http://gynvael.coldwind.pl/?id=130&lang=en

于 2009-06-03T19:17:37.653 回答