zsh安装与配置

  • 2018-09-09
  • 695
  • 1

说明:
1. 修改默认 shell 前进行安装前备份 /etc/passwd
2. 安装 zsh 后安装 oh-my-zsh 用于快速配置 zsh。
3. 安装 oh-my-zsh 后环境变量入口会从 ./bashrc 变成 ./zshrc

1. 安装zsh

sudo apt update
sudo apt upgrade

sudo apt install zsh

2. 更改登录 shell

将登录默认的 bash 替换为 zsh

  1. 更改当前用户登录 shell
    chsh -s /bin/zsh
    
  2. 修改 passwd,解决 chsh: PAM 认证问题: 把自己用户名所在行尾的 /bin/bash 改成 /bin/zsh ,如下图:

    image-20200519163315537

3. 安装 Git

sudo apt install git

4. 安装 oh-my-zsh

ohmyzsh/ohmyzsh 是 zsh 的一个配置框架,其继承许多 zsh 主题以及整合了插件。

通过 curl 安装:

sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

使 zshrc 更改生效:

source ~/.zshrc

5. 插件

5.1 自动跳转

wting/autojump 可以学习使用最频繁切换的路径,通过 j 来跳转。

安装命令:

sudo apt-get install autojump

添加到 zshrc:

vim .zshrc
# 在最后一行加入,注意点后面是一个空格
. /usr/share/autojump/autojump.sh

# 生效
# source ~/.zshrc

5.2 语法高亮

zsh-users/zsh-syntax-highlighting 增强 zsh 的语法高亮。

安装:

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

添加到 zshrc:

# vim ~/.zshrc
# zshrc plugins 中换行继续添加 zsh-autosuggestions,如
plugins=(
    git
    zsh-syntax-highlighting
)

5.3 命令建议

zsh-users/zsh-autosuggestions 通过记录历史命令来进行命令建议。

安装:

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

添加到 zshrc:

# vim ~/.zshrc

# zshrc plugins 中添加 zsh-autosuggestions,如
plugins=(
    git
    zsh-syntax-highlighting
    zsh-autosuggestions
)

6. 其他自定义

添加常用设置到 ~/.zshrc

  1. 通配符:ZSH 默认情况下会自己拦截如 * ? 之类的通配符,并尝试自己来解释,修改配置可解决
    setopt no_nomatch
    
  2. 命令别名:ls 详细列表中文件夹与文件分开,文件夹在上
    # --group-directories-first
    alias l="ls -ahl --group-directories-first"
    
  3. 历史命令去重:
    # ignore dups
    setopt hist_ignore_all_dups
    

7. 配置主题

官方主题:ohmyzsh – External themes,此链接里包含了常用主题的截图对比,此处使用 ys 主题:

sudo vim ~/.zshrc

找到 ZSH_THEME="robbyrussell",修改为:ZSH_THEME="ys"

生效:

source ~/.zshrc

版权声明: 本网站所有资源采用BY-NC-SA 4.0协议进行授权,转载应当以相同方式注明文章来自:zsh安装与配置 - 一方的天地

评论

    发表评论

    陕ICP备18010914号
    知识共享许可协议
    本作品由一方天地采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可,转载或引用本站文章应遵循相同协议。如果有侵犯版权的资源请尽快联系站长,本站会在24h内删除有争议的资源。 -