10

这是我第二次想要这样做,我的 google-fu 又一次让我失望了。

在运行 shell 脚本(在我的情况下是 bash 脚本)的过程中,是否有一个程序/脚本可以测试当前 shell 是否支持颜色?

或者有没有办法采用终端类型并轻松确定它是否支持颜色?

无论哪种方式都会有所帮助。

4

1 回答 1

18

您可以使用tput colors.

对于我的终端,TERM=xterm-256colors输出是 [drumroll] 256!以下是一些其他示例:

$ TERM=vt100 tput colors
-1
$ TERM=vt220 tput colors
-1
$ TERM=linux tput colors
8
$ TERM=cons25 tput colors
8
$ TERM=linux tput colors
8
$ TERM=rxvt-unicode tput colors
88

或者tput -Tvt100 colors还允许您指定您感兴趣的终端类型。

于 2010-09-16T00:46:09.073 回答