谁在设置我的 LS_COLORS?

谁在设置我的 LS_COLORS?

我正在使用bashshell,并且想要更改一些ls列表颜色;我注意到了这可以使用LS_COLORS环境变量来控制,它对各种文件和目录类型和状态的终端颜色进行编码。

现在我 LS_COLORS在我的环境中设置,但我不记得/不知道到底是谁设置的!我在我的、等中找不到任何或什至没有export LS_COLORS提及。LS_COLORS.bashrc.bash_login

那么它设置在哪里呢?

注意:我使用的是基于 Debian 的发行版

答案1

LS_COLORS变量可能是使用 GNU 设置的dircolors命令- 所以环境变量名不直接使用。您在类似 Debian 的系统上会发现的典型.bashrc片段是:

if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
fi

所以,这就是您想要做的:

  • 如果~/.dircolors不存在,则使用创建它dircolors -p > ~/.dircolors
  • ~/.dircolors使用您最喜欢的文本编辑器进行编辑
  • 这是另一个类似人的页面解释如何编辑dircolors数据库而不是 LS_COLORS 变量

现在,每当您启动新的 shell 时,您都应该获得您想要的颜色。

相关内容