关于macos:OS X终端颜色

OS X Terminal Colors

我刚开始接触OSX,在与UbuntuLinux合作一段时间后,我刚获得了一台Mac。我想弄清楚的很多事情之一就是终端窗口中没有颜色,就像运行ls -lagit status时显示的那样。

我只是不知道如何激活我的外壳的颜色。


我知道,这条线是旧的,但问题不是。

这里有一个解决方案,我发现它可以使终端颜色。

在您的主目录中编辑您的.bash_profile(自OS X 10.8起)或(适用于10.7及更早版本):.profile.bashrc/etc/profile(取决于可用性),并添加以下代码:

1
2
export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced

CLICOLOR=1只允许对终端进行着色。

LSCOLORS=...指定了如何为特定项目着色。

编辑.bash_profile后,启动终端,通过执行以下命令强制进行更改:

江户十一〔11〕。

然后转到Terminal > Preferences,单击Profiles选项卡,然后单击Text子选项卡,并选中Display ANSI Colors

Sierra验证(2017年5月)。


您可以在其中一个启动脚本中使用基于Linux的语法。刚刚在OSX山狮箱上测试过。

在你的电脑里

1
2
export TERM="xterm-color"
export PS1='\[\e[0;33m\]\u\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;34m\]\w\[\e[0m\]\$ '

这会给你一个很好的颜色提示。要添加彩色ls输出,可以添加alias ls="ls -G"

要测试,只需运行一个source ~/.bash_profile来更新当前终端。

关于颜色的旁注:颜色前面是一个转义序列\e,由一个颜色值定义,该颜色值由[style;color+m]组成,包装在转义[]序列中。如。

  • 红色=\[\e[0;31m\]
  • 粗体红色(样式1)=\[\e[1;31m\]
  • 透明色=\[\e[0m\]

我总是在根的.bash_配置文件中添加一个稍微修改过的颜色方案,以使用户名变红,所以我总是清楚地看到我是否以根用户身份登录(如果我打开了许多终端窗口,则方便地避免出错)。

/root/.bash_profile中:

埃多克斯1〔27〕

对于我所有的在线ssh帐户,我确保将主机名设置为红色,以区分我是在本地还是远程终端。只需在服务器上的home dir中编辑.bash_profile文件。如果服务器上没有.bash_profile文件,则可以创建该文件,并应在登录时获取该文件。


Martinvonmartinsgr_n和4levels方法证实在Mac OS X Mountain Lion上非常有效。

我需要更新的文件是~/.profile。

但是,我不能不推荐我最喜欢的应用程序ITerm2就离开这个问题。

ITerm2允许您从文件加载全局颜色方案。很容易尝试和尝试一系列的配色方案。

这是ITerm2窗口的屏幕截图和颜色首选项。iTerm2 Color Preferences Screenshot Mac

一旦我将以下内容添加到我的~/.profile文件中,iterm 2就能够覆盖这些颜色。

1
2
3
export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced
export PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

这里有一个很棒的存储库,其中有一些不错的预设:

mbadolato在Github上的ITerm2配色方案

附加:选择"显示/隐藏带有系统范围热键的iterm2",然后使用更好的touchtool绑定该键。立即用鼠标手势隐藏/显示终端。


如果要使ls着色,必须编辑~/.bash_配置文件并添加以下行(如果尚未写入):

1
source .bashrc

然后编辑或创建~/.bashrc文件,并将别名写入ls命令:

1
alias ls="ls -G"

现在,如果已经启动,您必须在终端中键入source .bashrc,或者只需打开一个新的终端。

如果你想在你的lsjuste中有更多的选择,请阅读手册(man ls)。选项与GNU/Linux系统中的选项不完全相同。


如果您使用的是tcsh,那么编辑您的~/.cshrc文件以包括以下行:

1
2
setenv CLICOLOR 1
setenv LSCOLORS dxfxcxdxbxegedabagacad

如马丁所说,lscolors指定要使用的配色方案。

若要生成要使用的lscolors,请签出此网站


检查$term给出了什么:我的是xterm color,ls-alg然后执行彩色输出。


当我在实验室使用MacOSX时,我可以使用终端(而不是x11)获取终端颜色,然后编辑配置文件(从Mac菜单栏)。界面的颜色有点奇怪,但您必须将修改后的主题设置为默认主题。

通过编辑.bashrc进行进一步的设置。