Mac 终端—不同文件不同颜色显示,提示文字

时间:2023-03-08 17:32:03
Mac 终端—不同文件不同颜色显示,提示文字

原文地址

  1. 修改Mac终端(Terminal)里不同类型文件的显示颜色

  2. 修改Mac终端(Terminal)的提示文字

  3. Mac终端显示/隐藏文件命令

1. 修改Mac终端(Terminal)里不同类型文件的显示颜色

我们开发经常会使用Terminal,可以说频繁使用(推荐终端工具iTem 2,也是我前leader推荐给我的)。很多人认为使用Terminal逼格很高,其实呢就是逼格很高^_^。Mac OS下ls命令默认是单色输出,如下:

Mac 终端—不同文件不同颜色显示,提示文字

ls单色输出界面.png

我们打开文件~/.bash_profile,添加下面内容,保存文件,重新打开终端运行即可:

MAC 打开.bash_profile

1. 启动终端Terminal

2. 进入当前用户的home目录

输入cd ~

3. 创建.bash_profile

输入touch .bash_profile

4. 编辑.bash_profile文件

输入open -e .bash_profile

5. 保存文件,关闭.bash_profile

6. 更新刚配置的环境变量

输入source .bash_profile

export CLICOLOR=1

export LSCOLORS=GxFxCxDxBxegedabagaced

解释:

  • SCLICOLOR是用来设置是否进行颜色的显示。CLI是Command Line Interface的缩写。

  • LSCOLORS是用来设置当CLICOLOR被启用后,各种文件类型的颜色。LSCOLORS的值中每两个字母为一组,分别设置某个文件类型的文字颜色和背景颜色。LSCOLORS中一共11组颜色设置,按照先后顺序,分别对以下的文件类型进行设置(经过我测试有好几个不生效,基本够用):

directory 这是一个目录

symbolic link 这是一个符号链接

socket 这是一个socket链接

pipe 这是一个管道

executable 这是一个可执行文件

block special 这是一个字符特殊文件

character special 这是一个块特殊文件

executable with setuid bit set 可执行以不同的UID运行的程序

executable with setgid bit set 可执行以一个额外的组特权运行的程序

directory writable to others, with sticky bit

directory writable to others, without sticky bit

LSCOLORS中,字母代表的颜色如下:

a 黑色

b 红色

c 绿色

d 棕色

e 蓝色

f 洋红色

g 青色

h 浅灰色

A 黑色粗体

B 红色粗体

C 绿色粗体

D 棕色粗体

E 蓝色粗体

F 洋红色粗体

G 青色粗体

H 浅灰色粗体

x 系统默认颜色

Mac 终端—不同文件不同颜色显示,提示文字

ls 多色输出界面.png

2. 修改Mac终端(Terminal)的提示文字

环境变量PS1就是终端的提示文字格式,默认为“\h:\W \u\$”,可以用echo来查看:

echo $PS1

PS2则是换行后的提示符,默认为“>”。

部分可使用的格式有:

\d – 现在的系统日期

\t – 现在的系统时间

\h – 主机名

\\# – 命令号(Comannd Number)

\u – 用户名

\W – 当前所在的路径

\w – 当前所在的完整路径

如只想显示命令号,可以输入如下命令:

PS1=”\#: “

改成Linux风格可运行:

PS1=”[\u@\h \W]\$ “

但是退出后这些环境变量就丢失了,要永久生效的话,可以在~/.bash_profile、~/.profile或/etc/profile(需要管理员权限)里进行设置,保存文件,重新打开终端: 你们可以自定义自己想显示的

echo 'PS1="[\u \W] Comannd \\# >>> "' >> ~/.bash_profile

Mac 终端—不同文件不同颜色显示,提示文字

终端提示文字修改.png

3. Mac终端显示/隐藏文件命令

在开发过程中经常会修改隐藏文件,比如上面的.bash_profile、.gitignore等等,我们可以

用命令 ls -a  查看所有文件(包含隐藏文件),

用命令 pbcopy 用命令 echo 'PS1="[\u \W] Comannd \# >>> "' >> ~/.bash_profile 写入内容

当然我们可以再mac下显示和隐藏所有隐藏文件:

显示 Mac 隐藏文件的命令:

defaults write com.apple.finder AppleShowAllFiles -bool true

隐藏 Mac 隐藏文件的命令:

defaults write com.apple.finder AppleShowAllFiles -bool false