ls:fedora 33 中 LS_COLORS 环境变量 zshell 的不可解析值

ls:fedora 33 中 LS_COLORS 环境变量 zshell 的不可解析值

我在 fedora 33 操作系统中使用 zshell。

我有配置在我的~/.zshrc文件中

每当我运行ls命令时,我都会收到以下错误 -

ls: unparsable value for LS_COLORS environment variable

我该如何修复这个错误?

当我回显时,LS_COLORS 是正确的。

M. ~ 
○ echo $LS_COLORS
GxFxCxDxBxegedabagaced

答案1

(至少)有两种常见格式可将颜色归因于ls.您的变量似乎包含 BSD 样式格式,该格式通常提供给LSCOLORS环境变量。 GNU 工具使用不同的格式(并且有助于将变量重命名为LS_COLORS)。

您可以使用该dircolors工具为 GNU 样式变量创建适当的设置。

答案2

  1. 启动一个外壳

  2. 跑步unset LS_COLORS

  3. 跑步dircolors -p > ~/.dircolors

  4. (可选)编辑~/.dircolors以使用您喜欢的颜色。它的评论很好并且很容易理解。如果您用来vim编辑它,语法突出显示规则将向您显示编辑时颜色代码的外观。

  5. 将以下内容添加到您的~/.zshrc(和/或~/.bashrc或者~/.bash_profile如果您使用的是 bash)中,以便在启动 shell 时加载您的颜色定义:

     [ -e ~/.dircolors ] && eval $(dircolors -b ~/.dircolors) || eval $(dircolors -b)
    

    注 1:这应该替换任何现有的用于~/.zshrc设置的代码LS_COLORS

    /etc注 2:您可以通过编辑相应的 shell 启动文件来代替(或同时)您的主目录中的文件,从而在系统范围内进行此操作(即影响所有用户) 。有关详细信息,请阅读您的 shell 的手册页。

  6. 这只会影响这些更改之后启动的 shell。要影响任何当前正在运行的 shell,请在每个终端中运行同一行

相关内容