Mac安装zsh小总结

楓尘君不用不知道,原来Mac用zsh+iterm2竟然是如此的好用,丝丝顺滑,再用苹果的终端已然索然无味。

下面废话不多说,搞起来:
注:有多种安装zsh的方法,使用使用 brew或者wget等等,本文主要介绍git方式手动安装,毕竟手动才会有更大乐趣不是~

  • 1.git手动安装:

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

  • 2.如果你已存在~/.zshrc文件,则备份现有zshrc文件(以防万一,备用)
    cp ~/.zshrc ~/.zshrc.orig

  • 3.创建一个新的zsh配置文件(以防万一,备用)
    cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

  • 4.改变默认的Shell
    chsh -s /bin/zsh

注:将ZSH设置为默认的shell(bash切换为zsh)
chsh -s /bin/zsh
如果要切换回去:
chsh -s /bin/bash

  • 5.将bash(之前系统默认)的环境变量转移到zsh上

为什么要转移:
安装zsh后,默认情况下就不会自动读取~/.bash_profile了。而是运行在用户目录下应该有.oh-my-zsh目录,和.zshrc配置文件。在zsh中按照上面的流程 只能设置临时的环境变量,如果退出终端,又将恢复系统默认的环境变量(bash)。
如何解决:
由于每次zsh启动都会读取这个配置文件,所以我们可以把环境变量的配置信息放到这个配置文件中,这样每次启动zsh的时候,就会执行一次环境变量配置信息。

1.打开vim ~/.zshrc 将你要配置到环境变量配置到该文件中即可

2.打开vim ~/.zshrc 添加source ~/.bash_profile ,这样~/.bash_profile配置的环境变量同样有效

目前为止,zsh就安装好了,但是这只是最基础的,这么牛批的东西怎么可能没有后续sao操作呢


  • 6.配置zsh

Zsh 的配置文件中提供了详细的注释,你可以根据注释修改相关设置,满足自己的要求。
根据前面的注释,删除行前的注释符号 # 即可。

vi ~/.zshrc  进入配置文件

设置别名
alias zshconfig='vi ~/.zshrc'
alias vimconfig='vi ~/.vimrc'
alias ll='ls -l'
alias vi='vim'
alias subl='open -a "Sublime Text"'

启用命令纠错功能
# Uncomment the following line to enable command auto-correction.
ENABLE_CORRECTION="true"


你想关闭 Zsh 的自动更新,
DISABLE_AUTO_UPDATE="true"


插件  git  osx  是系统自带的只需要在.zshvr中启用,命令如下:
plugins=(git osx)
更多插件请看下文....

保存,然后执行
source ~/.zshrc
  • 6.设置主题
查看现有主题:
cd ~/.oh-my-zsh/themes && ls
可以看到许多:xxxx.zsh-theme的主题名称
例如:3den.zsh-theme
设置主题:
vi ~/.zshrc
ZSH_THEME="3den" 
就是用了上面得3den.zsh-theme主题了
我们还可以随机设置主题:
找到:ZSH_THEME并修改
ZSH_THEME="random"
这样就可以每次打开终端主题是随机的,
个人强烈推荐,这样会让你在操作命令行时不至于太枯燥和审美疲劳。

注:有些的主题可能需要一些额外的配置。
例如,为了使用 agnoster 主题,你必须先安装 Powerline 字体。具体请自行google。

如果不喜欢现有的140个主题,可以去主题网站上下载,在修改配置文件即可:
更多主题选择链接

  • 7.安装插件
    插件是zsh区别于bash最大的,zsh支持海量插件可供选择,提高工作效率:
    插件的目录 可以访问 cd ~/.oh-my-zsh/plugins

1) 安装autojump插件

什么是autojump插件呢?

在命令行中切换目录是最常用的操作,不过很少有比一遍又一遍重复“cd ls cd ls cd ls ……”更令人沮丧的事情了。如果你不是百分百确定你想要进入的下一个目录的名字,那么你不得不使用ls来确认,然后使用cd来进入你想要进的那一个。所幸的是,现在大量的终端和shell语言提供了强大的自动补全功能来处理该问题。但是,你仍然需要一直疯狂地敲击TAB键来干这事。如果你和我一样懒惰,你一定会对autojump感到惊喜。
autojump是一个命令行工具,它允许你可以直接跳转到你喜爱的目录,而不用管你现在身在何处。(描述来自于https://blog.csdn.net/wzz443777878/article/details/52758702)

如何安装

说一千道一万,来,赶快整起来:

安装autojump:
brew install autojump(确保有brew)
使用vi ~/.zshrc打开.zshrc
a. 找到 plugins=,在后面添加
autojump:plugins=(xxx autojump) 注:xxx不重要,只需要在后面加上 “空格”autojump
安装了autojump之后,
zsh 会自动记录你访问过的目录,通过 j + 目录名 可以直接进行目录跳转,
而且目录名支持模糊匹配和自动补全,例如你访问过wahaha-1.0.0目录,
输入j waha 即可正确跳转。j –stat  可以看你的历史路径库。

添加一条快捷键:j -a s '/Users/XXX/Desktop/code/shark’ 

这句代码的含义:j -a 你定义的快捷命令 ‘需要跳转的目录位置’
此后要是想进入shark目录,除了传统的cd一级一级的进入,还可以直接使用命令:j s 

2) 自动补全插件zsh-autosuggestions

使用以下命令安装
git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions

安装好之后可以按→(方向键右)自动补全

3)语法高亮zsh-syntax-highlighting使用以下命令安装

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

这两个模块下载结束,还是使用vi ~/.zshrc 添加
如图:来自博客点击跳转
在这里插入图片描述4)自动补全插件incr
在这里插入图片描述如何下载这个插件:

官网: http://mimosa-pudica.net/zsh-incremental.html

下载网站上的 incr-0.2.zsh 
在 oh-my-zsh 目录的插件目录下创建文件夹incr 并将incr-0.2.zsh 拷贝进去
$ cd ~/.oh-my-zsh/plugins
$ mkdir incr
$ cd incr 
$ cp /Users/libq/Downloads/incr-0.2.zsh(.zsh存在路径) /Users/liu_bowen/.oh-my-zsh/plugins/incr/
打开vim ~/.zshrc 最后一行添加:
$source ~/.oh-my-zsh/plugins/incr/incr-0.2.zsh
退出更新一下:
source ~/.zshrc



5)z(命令快速跳转目录)插件

z 插件也是 autojump 插件在 oh-my-zsh 内置的类似组件,基本包含所有功能。
官方文档

作用:
使用 z 之后可以让你最快速的切换文件路径。

z 插件记住了你在命令行中跳转过的每个路径,并且记录了每个路径的访问次数,
因此,它常常能猜到你想访问的路径。
记录文件就在用户根目录下,名字是 .z。
说“常常能猜到”,意思是有猜错的时候,比如,不曾访问过的路径,z 插件就不知道,没法跳转。

安装:

默认安装oh my zsh时就已经安装了 z 插件,具体可以在以下目录看到

cd ~/.oh-my-zsh/plugins

所以你只需要在(~/.zshrc)中的插件列表中添加

vim ~/.zshrc
# 再插件列表中添加
plugins=(其他插件 z)

使用

参数 	描述
-c 	在当前目录下进行子目录匹配
-e 	echo最合适的匹配和对应的rank,但是不执行cd操作
-h 	显示帮助信息
-l 	echo所有匹配的目录和对应的rank,但是不执行cd操作
-r 	进入所匹配目录列表中rank值最高的那个目录
-t 	进入所匹配目录列表中最近访问的那个目录
-x 	在.z缓存中清除当前目录的记录

例子:
z foo 进入到最匹配的foo关键字的目录
z foo bar 进入层级匹配,先匹配foo关键字,再匹配bar关键字的目录
z -r foo 进入匹配foo关键字目录列表中rank值最高的目录
z -t foo 进入匹配foo关键字目录列表中最近访问的目录
z -l foo 列出所有匹配foo关键字的目录列表

这五个插件基本上就够用了,不够我以后还会补充,估计会鸽!!

  • 8.Oh My Zsh的升级

输入upgrade_oh_my_zsh,回车即可

  • 9.Oh My Zsh的卸载

输入uninstall_oh_my_zsh,回车即可

  • 10.Zsh配置文件的更新

$source ~/.zshrc


Zsh的好搭档 号称终端利器 iterm2

安装 iTerm2

下载地址:https://www.iterm2.com/downloads.html
其优势有:

  • 标签变色
  • 背景透明
  • 智能选中

这里说几个楓尘君个人比较常用的(这里只针对mac):

分屏(非常常用)
    ⌘ + d: 垂直分屏,

    ⌘ + shift + d: 水平分屏。

    ⌘ + ]和⌘ + [在最近使用的分屏直接切换.

    ⌘ + opt + 方向键切换到指定位置的分屏。

    ⌘ + 数字: 切换标签页。 

    ⌘ + 方向键 按方向切换标签页。

    shift + ⌘ + s: 保存当前窗口快照。

    ⌘ + opt + b: 快照回放。很有意思的功能,你可以对你的操作根据时间轴进行回放。可以拖动下方的时间轴,也可以按左右方向键
快捷命令说明
命令 	              说明
command + t 	新建标签
command + w 	关闭标签
command + f 	智能查找,支持正则查找
command + 数字 command + 左右方向键 	切换标签
command + enter 	切换全屏
command + d 	垂直分屏
command + shift + d 	水平分屏
command + option + 方向键 command + [ 或 command + ] 	切换屏幕
command + ; 	查看历史命令
command + shift + h 	查看剪贴板历史
ctrl + u 	清除当前行
ctrl + l 	清屏
ctrl + a 	到行首
ctrl + e 	到行尾
ctrl + f/b 	前进后退
ctrl + p 	上一条命令
ctrl + r 	搜索命令历史
左右键跳转(快速光标前移/后移)

主要是按住option + → or ←键,在命令的开始和结尾跳转切换,原本是不生效的,需要手动开启下。

打开 iTerm2,按Command + ,键,打开 Preferences 配置界面,然后Profiles → Keys → Load Preset… → Natural Text Editing,就可以了。

字体放大缩小

Command + 加号 Command + 减号

等等,具体可参考
知乎问题:iterm2有什么酷功能?
Mac OS 终端利器 iTerm2

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值