Hello World

吞风吻雨葬落日 欺山赶海踏雪径

0%

Mac下采用zsh代替bash

zsh是一个Linux用户很少使用的shell,这是由于大多数Linux产品安装,以及默认使用bash shell。几乎每一款Linux产品都包含有zsh,通常可以用apt-get、urpmi或yum等包管理器进行安装,Mac自带zsh,我们就不用装了。

mac上快速切换到zsh

先切换到 /bin/zsh

1
chsh -s /bin/zsh

默认的zsh配置不太友好,我们下载一个github上别人配置好的文件

1
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh 

备份

1
cp ~/.zshrc ~/.zshrc.orig

替换

1
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

重启terminal

选一个合适的zsh主题

注意:采用zsh替代bash后,以前/.bashrc之类的配置应该写入/.zshrc中

/.oh-my-zsh/themes目录中,有大量的主题可供选择,根据不同的爱好,可以自行选择,然后在/.zshrc中配置即可

我自己选择的主题

ZSH_THEME=”af-magic”
重启终端

环境变量

换了zsh,bash_profile是不会再被执行了,所以环境变量失效了。
以前是设置在~/.bash_profile

1
2
3
4
5
6
export M2_HOME="/Library/apache-maven-3.5.2/"
export PATH="$M2_HOME/bin:$PATH"

alias mci='mvn clean install -DskipTests=true'
alias gs='git status'
alias gp='git pull'

换成zsh后需要重新设置,有两种方案

  1. 把命令写在~/.zshrc
  2. ~/.zshrc中加入source ~/.bash_profile 触发执行bash_profile

补充

1
2
~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次.默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取.