Bash 选项卡完成颜色与 ls 颜色不同

Bash 选项卡完成颜色与 ls 颜色不同

我已经定义了LS_COLORS和两者,但由于某种原因,当我使用时和在 中完成选项卡时,LSCOLORS我显示的颜色不同。我在 MacOS 上。lsbash

在此输入图像描述 在此输入图像描述

我的里面有这些行.bashrc

 bind 'set colored-stats on'
 export LSCOLORS=exfxcxdxbxegedabagacad
 export LS_COLORS='di=34:ln=35:so=32:pi=33:ex=31:bd=34;46:cd=34;43:su=30;41:sg=30;46:tw=30;42:ow=30;43'

答案1

我通过随机尝试设法弄清楚了。
bind 'set colored-stats on'需要出现在LS_COLORS定义之后。

答案2

ls不同颜色的输入和完成的问题TAB如下。 ls 颜色取自LS_COLORS环境变量的当前值。完成颜色由库使用“ ”选项TAB提供。它还使用 中定义的颜色,但仅在 Bash 启动时使用,即 readline 库初始化时。所以Bash启动后,如果修改了,那么就会出现ls和TAB补全不一致的情况。为了保持一致性,请确保在 Bash 启动之前进行更改,例如,将其放入 .bash_profile 中,或通过导出,然后调用“ ”。readlineset colored-stats onLS_COLORSLS_COLORSLS_COLORSLS_COLORSxterm

查看更多信息:https://unix.stackexchange.com/a/741843/432690

相关内容