为何我的 zsh ls 没有彩色?

为何我的 zsh ls 没有彩色?

启动一个新的 16.04 服务器实例,安装 zsh,将 chsh 转换为 zsh,创建默认的 .zshrc,重新登录,ls 输出不是彩色的。从外观上看,.zshrc 似乎具有所有正确的 dircolors 和 LS_COLORS 内容,但我不是 zsh 专家。

我错过了什么?

答案1

ZSH 输出不像 bash 输出那样丰富多彩,因为像ls,这样的命令grep默认不是彩色的,bash 有默认别名来使它们变得丰富多彩

要在 zsh 中获得与 bash 相同的颜色,请将这些行添加到 .zshrc 执行 gedit $HOME/.zshrc以打开 .zshrc(使用编辑器代替 gedit)


# enable color support of ls and also add handy aliases
  if [ -x /usr/bin/dircolors ]; then
      test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
      alias ls='ls --color=auto'
      alias dir='dir --color=auto'
      alias vdir='vdir --color=auto'
      alias grep='grep --color=auto'
      alias fgrep='fgrep --color=auto'
      alias egrep='egrep --color=auto'
  fi

# some more ls aliases
    alias ll='ls -alF'
    alias la='ls -A'
    alias l='ls -CF'

(来自.bashrc)

重新启动 zsh,现在命令输出应该类似于 bash

答案2

好的,所以我所要做的就是alias ls='ls --color'。感谢评论中指出我是个白痴的人。:-)

(但为什么我以前不必这样做?我一直以为ls默认是彩色模式......)

相关内容