这几天尝试了一下 zsh,是linux shell 的一种,mac下默认提供了六种shell,可以通过
1 | cat /etc/shells |
查看,
1 | List of acceptable shells for chpass(1). |
默认使用的bash,这也是大多数linux发行版的默认选择,zsh是另外一种shell,关于它们的不同,可以自行搜索。
mac上虽然自带了zsh,但是用zsh --version
查看版本可以发现还是几年前的比较老的版本,于是想安装最新的版本,但是好像没法update ,只能自己另外安装,下面是安装步骤:
先安装 homebrew
1
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
来源于官网 https://brew.sh/
安装zsh
1
brew install zsh zsh-completions
来源:https://github.com/robbyrussell/oh-my-zsh/wiki/Installing-ZSH
添加刚刚安装的zsh路径到系统记录
查看当前系统的shell1
cat /etc/shells
我们添加刚刚下载的新的zsh路径
/usr/local/bin/zsh
到最下面一行1
vim /etc/shells
…(vim操作自行研究)
添加完成后再次查看
1
2
3
4
5
6
7
8
9
10
11
12
13> cat /etc/shells
List of acceptable shells for chpass(1).
Ftpd will not allow users to connect who are not using
one of these shells.
/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
/usr/local/bin/zsh设置为
/usr/local/bin/zsh
为默认的shell1
chsh -s /usr/local/bin/zsh
不要漏了上面第3步,否则会提示
chsh: /usr/local/bin/zsh: non-standard shell
,确认设置成功:关闭终端重新打开,
1
2echo #SHELL // 应该显示的是 /usr/local/bin/zsh
SHELL --version // 应该显示的是最新的版本,比如 5.6.x安装 oh-my-zsh
1
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
来源:https://github.com/robbyrussell/oh-my-zsh
安装成功后可以看到
1
2
3
4
5
6
7
8
9
10__ __
____ / /_ ____ ___ __ __ ____ _____/ /_
/ __ \/ __ \ / __ `__ \/ / / / /_ / / ___/ __ \
/ /_/ / / / / / / / / / / /_/ / / /_(__ ) / / /
\____/_/ /_/ /_/ /_/ /_/\__, / /___/____/_/ /_/
/____/ ....is now installed!
Please look over the ~/.zshrc file to select plugins, themes, and options.
p.s. Follow us at https://twitter.com/ohmyzsh.
p.p.s. Get stickers and t-shirts at https://shop.planetargon.com.设置主题
1
vim ~/.zshrc
修改
ZSH_THEME
设置主题 ,比如ys
,执行
1
source ~/.zshrc
使它生效
因为我们使用了新的shell,所以之前设置的环境变量和设置都无效了,所以还需要把之前的设置拷贝过来,之前的设置都在文件
~/.bash_profile
里,拷贝到~/.zshrc
中背景色,字体和颜色这些都是在终端的偏好设置里面设置,我们可以另外设置几个比较方便的别名,比如
1
2
3
4alias zshrc="vim ~/.zshrc"
alias rcupdate="source ~/.zshrc"
alias stashpull="git stash && git pull && git stash pop"
alias xxxx="cd ~/desktop/xxxx"把这些内容添加到
~/.zshrc
文件的末尾,就可以直接使用zshrc
,rcupdate
,stashpull
,xxxx
等自定义命令了