Mac 相关设置
1 MAC终端zsh配置
(1) 下载安装iTerm2
官网地址: http://www.iterm2.com/
设置iTerm2无限滚屏:怕错过什么重要信息,那设置成无限滚屏吧!
【常用快捷键】
⌘ + k(command + k): 清屏(有时需要查找特定信息,避免上一次输出的干扰,可以先清屏再执行)⌃ + a(control + a):光标放行首(麻麻再也不担心我把光标移动到最后要靠手速了。)⌃ + e(control + e):光标放行尾⌘ + f(command + f):(调出查找框)查找^ + c(control + c):取消当前行(当前行已经输入很多了,想删除,不需要按住delete键逐字符删滴- -)⌘ + enter(command + enter):切换全屏(沉浸于shell中,慢慢爱上敲回车的感觉……但是,忽地一下,shell铺满屏幕了!如果不知道这个快捷键的话,有点儿秀不起来呀。——个人感觉,手速快的时候,误触还是时有发生滴。)
(2) 安装HomeBrew
大部分Mac系统已经自带Homebrew,查看是否安装方法:
brew --version
若提示无brew命令,则执行如下命令安装,可以参照官网https://brew.sh/
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" # 查看仓库地址 brew --repo brew --repo homebrew/core brew --repo homebrew/cask
(3) 更换终端默认Shell为zsh
Bash作为大多数系统默认安装的Shell,大家都多少有所接触,Zsh和Bash类似都是一个Shell,但是Zsh更注重用户体验和与人的交互,OS X默认也安装好了Zsh,然而你想自己从头开始配置一个顺手的Zsh是比较浪费时间的,有人已经帮我们配置好了,这个流行的Zsh配置叫---Oh My ZSH!,直观的效果如下图所示,代码开源在github。
Mac OS X默认已经安装好了Zsh,你可以打开终端,输入zsh --version来确认,如果没有安装,请参考这个文档。
打开终端输入下面的命令,切换默认Shell为Zsh:
chsh -s /bin/zsh
关闭终端重新打开后,你将默认使用zsh作为终端Shell。然而你会发现,终端并没有变得多酷炫,接着往下走
(4) 安装oh-my-zsh
参考《https://ohmyz.sh/#install》使用以下命令可以安装:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" # 下面这句好使: sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
我自己安装的时候是开了阿里郎代理,但是终端不知道为啥总是报错说 SSH:443 拒绝访问。但是可以直接用如下命令把仓库下载下来(或者直接下载zip文件也行):
git clone git@github.com:ohmyzsh/ohmyzsh.git
然后把上面那个install.sh 直接用浏览器打开复制到文件中,直接用sh执行。脚本中的逻辑是先把 ohmyzsh.git 克隆到~/.oh-my-zsh 目录,然后执行后面到初始化设置逻辑。既然仓库已经下载并拷贝过去了,那么就将install.sh 中下载和检查到逻辑注释掉,仅执行后半部分的初始化设置逻辑好了。
(5) 修改oh-my-zsh 主题
ls ~/.oh-my-zsh/themes vim ~/.zshrc // 修改 ZSH_THEME的值,经典配色是agnoster source ~/.zshrc // 生效 // 如果想获得更多的主题可以从https://github.com/robbyrussell/oh-my-zsh/wiki/Themes#agnoster下载
(6) 解决乱码问题
由于agnoster和一些其他主题显示需要Powerline字符集支持,需要下载新的字符集
git clone git@github.com:powerline/fonts.git cd fonts ./install.sh
打开iTerm2:偏好设置 -> Profiles -> Text -> change Font -> Roboto Mono for Powerline
(7) 隐藏zsh前面用户名/主机名
修改vim ~/.zshrc文件,在文件底部增加:
prompt_context() {}
只保留用户名,隐藏主机名
prompt_context() { if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then prompt_segment black default "%(!.%{%F{yellow}%}.)$USER" fi }
只保留主机名,隐藏用户名
prompt_context() { if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then prompt_segment black default "%(!.%{%F{yellow}%}.)$HOST" fi }
(8) 厉害的zsh插件
(a) AutoJump - 从任意目录一键跳转任意目录
下面着重介绍一个好用的插件AutoJump,举个连个栗子介绍下AutoJump的强大。
正常情况下需要一层层敲入
cd /Users/fanyu/Workspace/youku/new_reform/AppWrapper/OnePlayer
如果用autojump 则只需敲 j OneP ,两下shift 会自动生成关联,选择对应数字就能进入。autojump 支持在任意目录进入任意目录。
【安装方法可参考】https://github.com/wting/autojump/wiki
(b) zsh-autosuggestions
计算题:我输入了
echo hello指令,然后又输入了19条指令。接着又输入echo world指令。这个时候,我想找到历史指令echo hello,需要按几次上键?
答案是:输入echo按*两下*上键就可以啦。
autosuggestions插件会记录已经执行过的的指令。下次输入指令的时候,会智能提示。
额外地,只输入几个字符,然后按上键查找历史指令的时候,结果集合里所有的指令都是以已输入字符开头的。
(c) zsh-syntax-highlighting
问题:
mkdir和mkdri有什么不一样。有时候,敲错了指令,但是出错了才意识到。zsh-syntax-highlighting可以提前发现这个小问题
zsh-syntax-highlighting插件做了一件极简的事情:认识的指令显示为绿色,不认识的指令显示为红色。(当然,不认识的指令继续按回车,得到的将是:command not found错误提示。)
额外地,它还能检查括号是不是匹配。
(8.1) 安装autojump
brew install autojump
修改~/.zshrc文件,找到plugins字段,添加autojump。
默认是这样的: plugins=( git ) 修改为: plugins=( git autojump )
(8.2) 安装auto suggestions
git clone https://github.com/zsh-users/zsh-autosuggestions ~/Documents/.zsh-suggestions ln -s ~/Documents/.zsh-suggestions ~/.oh-my-zsh/plugins/zsh-autosuggestions
修改~/.zshrc文件,找到plugins字段,添加suggestions。修改后的样子大概是这样:
plugins=( git autojump zsh-autosuggestions )
(8.3) 安装syntax hightlighting
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/Documents/.zsh-syntax-highlighting ln -s ~/Documents/.zsh-syntax-highlighting ~/.oh-my-zsh/plugins/zsh-syntax-highlighting
修改~/.zshrc文件,找到plugins字段,添加highlighting。修改后的样子大概是这样:
plugins=( git autojump zsh-autosuggestions zsh-syntax-highlighting )
(9) 终极选择:ohmyzsh + powerlevel10k
Oh My Zsh有上百个自带主题,以及许许多多的外部主题。目前来看使用量教多的是 powerlevel9k,它的初始效果是这样的。

它的介绍是这样的,注意关键字:兼容 Powerlevel9k,10-100倍的性能提升!
载安装的方法还是Git仓库的配置:
git clone https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k # 然后设置 .zshrc 中的变量 ZSH_THEME Set ZSH_THEME=powerlevel10k/powerlevel10k in your ~/.zshrc.
安装完 powerlevel10k 后你可能会发现有乱码,这是因为你终端字体不支持那么多的字符,这就需要使用扩展字体了。
字体的安装,我们可以参考 powerlevel9k 的官方介绍:https://github.com/bhilburn/powerlevel9k/wiki/Install-Instructions#step-2-install-a-powerline-font
【提示】如果最后发现zsh的效果不太好,或者想更换一下设置,可以重新执行一遍:p10k configure
2 Java
2.1 Java 安装目录
/Library/Java/JavaVirtualMachines
➜ ~ tree /Library/Java
/Library/Java
├── Extensions
└── JavaVirtualMachines
├── openjdk-11.jdk -> /usr/local/opt/openjdk@11/libexec/openjdk.jdk
└── openjdk-8.jdk -> /usr/local/opt/openjdk@8/libexec/openjdk.jdk
4 directories, 0 files
2.2 常用查询命令
// 查看当前JAVA_HOME路径
/usr/libexec/java_home
// 卸载
brew uninstall openjdk@21
2.3 设置JAVA_HOME
/usr/libexec/java_home可以指定JDK版本,如下:
➜ ~ /usr/libexec/java_home -v1.8 /usr/local/Cellar/openjdk@8/1.8.0+282/libexec/openjdk.jdk/Contents/Home ➜ ~ /usr/libexec/java_home -v11 /usr/local/Cellar/openjdk@11/11.0.9/libexec/openjdk.jdk/Contents/Home
2.4 Jenv
// 安装
brew install jenv
// 添加如下内容到 .zshrc
export PATH="$HOME/.jenv/bin:$PATH"
eval "$(jenv init -)"
// 重新加载
source ~/.zshrc
// 查看版本
jenv versions
// 设置全局版本
jenv global <version>
// 设置shell窗口版本
jenv shell <version>
// 设置当前目录版本
jenv local <version>
// 验证版本
java -version
// 启用插件
jenv enable-plugin maven
jenv enable-plugin export
Refer:
(1) https://www.cnblogs.com/orzs/p/18312556
(2) https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
(3) Jenv: https://juejin.cn/post/7383205958828851237

浙公网安备 33010602011771号