zsh介绍
zsh 是一款功能强大的 shell 软件,它可以兼容 bash,并且提供了很多高效的改进。它是Linux里最庞大的一种shell,它有84个内部命令,也提供了更为强大的功能:
1.更好的自动补全 2.更好的文件名展开 3.丰富的插件 4.强大的定制性
但是由于配置过于复杂,一般情况下,我们不会使用该shell,直到「oh my zsh」的出现。
zsh 及 oh my zsh安装
yum install zsh -y #zsh安装(centos7) chsh -s /bin/zsh #切换系统shell为zsh cat /etc/shells #查看shell
#curl或wget安装 oh my zsh sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)" |
配置文件
#切换shell为zsh后之前的环境变量就会失效 vim .zshrc #修改zsh配置,可添加之前的环境变量 # User configuration source ~/.bash_profile
source .zshrc #修改后使配置生效 |
oh my zsh主题配置及自定义修改
ls ~/.oh-my-zsh/themes #查看已有主题
echo $ZSH_THEME #查看当前主题
vim ~/.zshrc ZSH_THEME="robbyrussell" #修改配置文件.zshrc中主题配置项,也可设置为随机random |
默认的 'robbyrussell'主题就已经很好,但缺少绝对目录路径和用户名的区分,可自定义主题文件robbyrussell.zsh-theme
为了避免oh-my-zsh的更新版本和自己修改的有冲突,最好不要修改原配置文件,可将其拷贝并重新命名为自己的主题文件myrobbyrussell.zsh-theme,并对其修改
vi ~/.oh-my-zsh/themes/robbyrussell.zsh-theme #修改 robbyrussell 主题的配置文件
# $USER 添加终端用户名及修改为绝对路径$PWD PROMPT="%(?:%{$fg_bold[green]%}$USER ➜ :%{$fg_bold[red]%}$USER ➜ )" PROMPT+=' %{$fg[cyan]%}[$PWD]%{$reset_color%} $(git_prompt_info)' |
目前采取做法是,配置不同的颜色来加以区分root及其他用户 (更多主题方案)
oh my zsh 插件配置
ls ~/.oh-my-zsh/plugins #查看已存在的插件
zsh-autosuggestions #根据历史输入指令的记录即时的提示 git clone https://github.com/zsh-users/zsh-autosuggestions.git #插件下载
zsh-syntax-highlighting #命令高亮插件,正确的拼写会是绿色标识,否则是红色,路径带有下划线时表示可用路径 git clone https://github.com/zsh-users/zsh-syntax-highlighting.git #插件下载
plugins=(git zsh-autosuggestions zsh-syntax-highlighting) #修改配置文件.zshrc中插件配置项 source ~/.zshrc #更新配置,使插件生效 |
更新/卸载 oh my zsh
vim ~/.zshrc disable_update_prompt = true #自动升级不提示,zsh默认会提示升级 disable_auto_update = true #禁用自动升级 upgrade_oh_my_zsh #手动更新 uninstall_oh_my_zsh zsh #卸载oh-my-zsh |