在C Shell中为ls输出自定义文件扩展名颜色

时间:2014-12-04 09:20:50

标签: linux shell csh ls

我知道ls有一个选项:

ls --color

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

1 个答案:

答案 0 :(得分:1)

是的,可以使用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