【发布时间】:2014-10-23 00:17:22
【问题描述】:
我最近决定试一试fish shell,并开始使用oh-my-fish。我遇到的问题是,在运行ls 之类的命令时,我无法弄清楚如何更改目录列表的颜色。下面的图片显示了以深蓝色列出的目录和以灰色列出的文件。
我已尝试更改主题,但无济于事,我不知道还能去哪里看。有什么想法吗?
【问题讨论】:
-
什么是我的鱼?链接坏了:(
标签: fish
我最近决定试一试fish shell,并开始使用oh-my-fish。我遇到的问题是,在运行ls 之类的命令时,我无法弄清楚如何更改目录列表的颜色。下面的图片显示了以深蓝色列出的目录和以灰色列出的文件。
我已尝试更改主题,但无济于事,我不知道还能去哪里看。有什么想法吗?
【问题讨论】:
标签: fish
您可能会看到LSCOLORS 的结果,您可以在 ls 手册页或 Google 中查找。
你看到这个是fish而不是bash的原因是fish将ls包装在一个传递-G标志的函数中,如你所见:
> functions ls
function ls --description 'List contents of directory'
command ls -G $argv
end
您可以将 LSCOLORS 更改为其他内容,例如在OS X:
set -Ux LSCOLORS gxfxbEaEBxxEhEhBaDaCaD
这是一个通用的环境变量,所以你只需要运行一次。
或者您可以通过覆盖函数来完全禁用它:
function ls ; command ls ; end
funcsave ls
这将创建并保存一个函数ls,它的优先级高于捆绑的函数。
【讨论】:
LS_COLORS。注意下划线! man dircolors 了解更多信息。