Windows 上的 Ubuntu 上的 Bash:无法更改(某些)目录颜色

Windows 上的 Ubuntu 上的 Bash:无法更改(某些)目录颜色

在 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 # directoryDIR 01;34 # directory(将颜色从蓝色更改为青色),保存了文件并重新启动了 BashonWindows。

希望有帮助

答案3

另一个选项(或者说唯一对我有用的选项)是安装 solarized-dark 主题https://github.com/neilpa/cmd-colors-solarized

(关闭/打开控制台窗口即可激活)

相关内容