ls -la
或 git status
时 Linux 终端中显示的颜色。请问如何在 Mac 终端激活颜色?请注意确保不改变原来的意思。ls -la
或 git status
时 Linux 终端中显示的颜色。请问如何在 Mac 终端激活颜色?请注意确保不改变原来的意思。以下是我找到的一种方案,可以启用全局终端颜色。
在您的主目录下编辑.bash_profile
(自OS X 10.8起) - 或(对于10.7及更早版本):.profile
或.bashrc
或/etc/profile
(取决于可用性),添加以下代码:
export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced
CLICOLOR=1
只是启用终端的颜色。
LSCOLORS=...
指定如何着色特定项目。
编辑完.bash_profile
后,请打开终端并通过执行以下命令来强制更改生效:
source ~/.bash_profile
然后前往 Terminal > Preferences
,点击 Profiles
选项卡,进入 Text
子选项卡,选中 Display ANSI Colors
选项。
在 Sierra(2017年5月)上经过验证。
LSCOLORS = ExGxFxdxCxDxDxxbaDecac
。 - remram~/.bash_profile
中可实现此功能。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\]
\[\e[1;31m\]
\[\e[0m\]
我总是在root的.bash_profile中添加略微修改过的颜色方案,使用户名变为红色,这样我就可以清楚地看到自己是否作为root登录(如果我打开了多个终端窗口,则非常方便避免错误)。
在/root/.bash_profile
中:
PS1='\[\e[0;31m\]\u\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;34m\]\w\[\e[0m\]\$ '
对于我在线上所有SSH账户,我确保将主机名设置为红色,以区分本地终端和远程终端。只需编辑服务器上您家目录中的.bash_profile
文件。如果服务器上没有.bash_profile
文件,则可以创建它,然后在登录时应被源化。
如果这对您不起作用,请阅读下面一些评论,因为我很少使用MacOS..
如果要在远程服务器上执行此操作,请检查~/.bash_profile
文件是否存在。如果不存在,只需创建它,它应该会在下次登录时自动获得源。
$PWD
用于PS1
,而不是\u
,如下所示:PS1=\[\e[0;31m\]$PWD\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;34m\]\w\[\e[0m\]\$
- cregoxPROMPT_COMMAND
中使用时,需要使用\033
语法而不是\e
。例如,在提示符之前添加一个带颜色的时间戳(将其包含在您的~/.bashrc
或~/.bash_profile
中):PROMPT_COMMAND="${PROMPT_COMMAND}; echo; echo -e '\033[0;35m'\[\$(date +%F\ %T)\]'\033[m'"
- user5359531MartinVonMartinsgrün和4Levels的方法已经确认在Mac OS X Mountain Lion上非常有效。
我需要更新的文件是~/.profile。
然而,我不能不推荐我的最爱应用程序iTerm 2。
iTerm 2可以从文件中加载全局颜色方案。非常容易尝试和测试许多色彩方案。
这是iTerm 2窗口和颜色偏好设置的屏幕截图。
一旦我将以下内容添加到我的~/.profile文件中,iTerm 2就能够重写颜色。
export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced
export PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
这里有一个非常棒的代码库,其中包含一些不错的预设:
额外福利:选择“使用系统范围的热键显示/隐藏iTerm2”,并使用BetterTouchTool将按键绑定到鼠标手势,以便通过手势立即隐藏/显示终端。
如果希望在终端中ls命令的输出带有颜色,需要编辑你的~/.bash_profile文件,并添加以下行(如果还没有写过):
source .bashrc
然后您编辑或创建~/.bashrc文件,并为ls命令编写一个别名:
alias ls="ls -G"
如果您已经启动终端,请在终端中键入source .bashrc
,或者只需打开一个新终端。
如果您想在ls
中获得更多选项,请阅读手册(man ls
)。选项与GNU / Linux系统中的不完全相同。
~/.cshrc
文件,并添加以下内容:setenv CLICOLOR 1
setenv LSCOLORS dxfxcxdxbxegedabagacad
就像Martin所说的那样,LSCOLORS指定了您想要使用的颜色方案。
要生成您想要使用的LSCOLORS,请查看此网站
bash
一直是OS X的默认shell。 - nelsonjchen检查 $TERM 的值:我的是 xterm-color,然后运行 ls -alG 命令会以彩色输出。
xterm-256color
时,我无法获得颜色。 CLICOLOR
和LSCOLORS
也无法改变这一点 ): - drevicko在实验室里工作时,我能够通过使用终端(而不是X11)并编辑配置文件(从Mac菜单栏中)来获取终端颜色。界面上的设置有点奇怪,但你需要将修改后的主题设置为默认值。
进一步的设置可以通过编辑.bashrc
文件来完成。