自定义 Cshell 中 ls 输出的文件扩展名颜色



我知道ls有一个选项:

ls --color

。这将在 c-shell 中为文件、目录、链接等显示不同的颜色,但我想知道是否有办法自定义 ls 的输出,以便匹配*.foo的文件显示为红色,匹配*.bar的文件显示为绿色等。我希望有某种方法可以在我的启动文件 .cshrc 中进行设置。有什么干净的解决方案吗?

是的,可以使用LS_COLORS变量。您可以按如下方式定义它:

setenv LS_COLORS "${LS_COLORS}:*.foo=00;31:*.bar=00;32:"

此变量用于自定义 ls 命令显示特定文件颜色的方式。它具有如下模式:

*.foo=<Attribute>;<foreground text color>;<background color>

Attribute values:
00=none
01=bold
04=underscore
05=blink
07=reverse
08=concealed
Text color codes:
30=black
31=red
32=green
33=yellow
34=blue
35=magenta
36=cyan
37=white
Background color codes:
40=black
41=red
42=green
43=yellow
44=blue
45=magenta
46=cyan
47=white

最新更新