在 Windows (10) 上的 Ubuntu 上的新 Bash 应用程序上,我尝试将目录颜色从蓝色更改为更明显的颜色,但由于某种原因,无法更改某些文件/目录的颜色。如何更改全部目录/文件颜色?我的 .bashrc 文件当前设置为文件和目录颜色的颜色提示为绿色和其他明亮颜色。设置如下:
LS_COLORS=$LS_COLORS:'di=1;31:fi=0;31;bd=0;32:fi=0;33:cd=0;96';
export LS_COLORS
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[0;31m\]\u@\h\[\033[0,31m\]:\[\033[0;31m\]\w\[\033[0,31m\]\$ '
一些文件和文件夹已根据我的 .bashrc 文件改变了颜色,但由于某种原因,其他文件和文件夹没有改变颜色。
答案1
当 ls -l 显示 wsl 之外的 windows 文件时,其他可写文件会导致绿色背景。正如 Schmendrick van der Distel 所说,在您的主目录中创建一个 dircolors。然后按如下所示更改 STICKY_OTHER_WRITABLE 和 OTHER_WRITABLE 以删除背景。
dircolors -p > ~/.dircolors
将 .dircolors 更改为以下值:
STICKY_OTHER_WRITABLE 31;00 # dir that is sticky and other-writable (+t,o+w)
OTHER_WRITABLE 31;00 # dir that is other-writable (o+w) and not sticky
重启 bash
答案2
我遇到了同样的问题并通过以下方式解决了:
在我的~/.bashrc
文件中我发现了以下几行:
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
.dircolors
由于我在主目录中找不到该文件,因此我通过以下方式导出标准配置dircolors -p > ~/.dircolors
现在我已将该行更改DIR 01;36 # directory
为DIR 01;34 # directory
(将颜色从蓝色更改为青色),保存了文件并重新启动了 BashonWindows。
希望有帮助
答案3
另一个选项(或者说唯一对我有用的选项)是安装 solarized-dark 主题https://github.com/neilpa/cmd-colors-solarized
(关闭/打开控制台窗口即可激活)