如何使用oh-my-fish更改目录列表的颜色?

Pay*_*ian 19 fish

我最近决定给鱼壳一枪,并开始使用我的鱼.我遇到的问题是,在运行诸如此类的命令时,我无法弄清楚如何更改目录列表的颜色ls.下面的图片显示了以深蓝色列出的目录和以灰色列出的文件.

在此输入图像描述

我试过改变主题无济于事,我无法弄清楚在哪里看.有任何想法吗?

rid*_*ish 43

您可能会看到结果LSCOLORS,您可以在ls手册页或Google中查找.

你用鱼而不是bash看到这个的原因是鱼在一个传递-G标志的函数中包裹ls,你可以看到:

> functions ls
function ls --description 'List contents of directory'
    command ls -G $argv
end
Run Code Online (Sandbox Code Playgroud)

您可以将LSCOLORS更改为其他内容,例如在OS X上:

set -Ux LSCOLORS gxfxbEaEBxxEhEhBaDaCaD
Run Code Online (Sandbox Code Playgroud)

这使得通用环境变量,所以你只需要运行一次.

或者你可以通过覆盖函数完全禁用它:

function ls ; command ls ; end
funcsave ls
Run Code Online (Sandbox Code Playgroud)

这将创建并保存一个ls优先于捆绑功能的功能.

  • 顺便说一句,如果有人想知道,这将使你的文件夹teal. (9认同)
  • 在 Ubuntu 上,环境变量的名称是“LS_COLORS”。注意下划线!`man dircolors` 了解更多信息。 (4认同)
  • 最好直接在 .config/fish/config.fish 中“设置 -Ux LSCOLORS gxfxbEaEBxxEhEhBaDaCaD”,不是吗? (2认同)