Mac os 自带的终端,用起来不太方便,界面也不友好,iterm2是终端工具,常用配置操作包括主题选择、声明高亮、自动填充建议、隐藏用户名和主机名、分屏效果等。
一、iTerm2安装
官网下载安装包:[https://iterm2.com/downloads.html)
使用Homwbrew安装:
brew install iterm2
安装完成后,在/bin目录下会多出一个zsh的文件。
Mac系统默认使用dash作为终端,可以使用命令修改默认使用zsh:
chsh -s /bin/zsh
如果想修改回默认dash,同样使用chsh命令即可:
chsh -s /bin/bash
Shell、Bash、Zsh区别
Shell:
之所以叫壳,是为了和计算机的“核”来区分,用它表示“为使用者提供的操作界面”,Linux的命令行界面。
Sh:
sh全称为Bourne Shell,来自于1977年底的Unix v7版。二进制文件位置为/bin/sh。
Bash:
bash全称为Bourne-Again Shell,是在1989年对sh的重写版,替代了sh。二进制文件位置为/bin/bash。现在的Linux系统以及macOS系统的shell都默认使用bash。
Zsh
Zsh即Z shell,是一款可用作交互式登录的shell及脚本编写的命令解释器。Zsh对Bourne shell做出了大量改进,同时加入了Bash、ksh及tcsh的某些功能。
查看本地Shell的命令
查看当前Linux的全部Shell:cat /etc/shells
查看当前使用的Shell:echo $SHELL或者echo $0
切换默认的Shell:chsh -s [shell的二进制文件路径],之后要重新登陆Shell才能生效哈。例如:
切换为Bash: chsh -s /bin/bash
切换为Zsh:chsh -s /bin/zsh
Bash的配置文件
/etc/profile:为系统的每个用户设置环境信息,当用户第一次登录时会执行该文件里的命令。默认会直接调用/etc/bashrc。该文件的改动需要重启才能生效。
/etc/bashrc:为每一个运行bash shell的用户执行此文件。当bash shell被打开时,会读取并执行该文件中的命令。所以修改该文件后,重新打开Shell即可生效。
~/.bash_profile:和/etc/profile类似,但是只对当前用户生效。
~/.bashrc:和/etc/bashrc类似,但是只对当前用户生效。
~/.bash_logout:当每次退出bash shell时,执行该文件。
~/.bash_history:保存了历史命令。在Shell为Bash时,每次敲击命令时,都会保存在这个文件里
Zsh的配置文件
.zshenv:存放的环境变量配置项在任何场景下都能被读取,这里通常把$PATH等变量写在这里,这样无论是在交互shell,或者运行程序都会读取此文件。个人理解对标Bash的profile。
.zshrc:在交互式shell中会读取并执行该文件,包含设置别名、函数、选项、键绑定等命令。对标bashrc。
.zlogin:在login shell的时候读取。
.zprofile:和.zlogin类似,但是是在.zshrc之前加载。
.zlogout:退出终端的时候读取,用于做一些清理工作。对标bash_logout。
.zsh_history:保存了历史命令。在Shell为Zsh时,每次敲击命令时,都会保存在这个文件里。
加载顺序:zshenv、zprofile、zshrc、zlogin
二、iTerm2配置
1、设置iTerm2为默认终端
2、配置iTerm2主题-安装配色方案
第一种方式:
iTerm2最常用的主题是Solarized Dark theme下载地址,解压。
第二种方式:
cd ~/Desktop/OpenSource
git clone https://github.com/altercation/solarized
cd solarized/iterm2-colors-solarized/
open .
在打开的finder窗口中,双击Solarized Dark.itermcolors和Solarized Light.itermcolors即可安装明暗两种配色:
使用
打开iTerm2 -> Preferences,然后Profiles ---> Colors -> Color Presets -> Import
,选择刚刚解压的solarized->iterm2-colors-solarized->Solarized Dark.itermcolors
文件,导入成功,最后选择Solarized Dark。
三、安装oh-my-zsh
oh-my-zsh是对主题的进一步扩展
官网地址:https://ohmyz.sh/
github地址:https://github.com/robbyrussell/oh-my-zsh
- 使用curl安装:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
- 使用
wget
安装:
sh -c "$(wget -O- https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
四、配置oh-my-zsh主题
oh-my-zsh是对主题的进一步扩展
第一种方式:
github主题下载地址:https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
zsh主题列表:https://github.com/robbyrussell/oh-my-zsh/tree/master/themes/
将主题修改为ZSH_THEME="agnoster"
vim ~/.zshrc
输入i
进入编辑模式,将ZSH_THEME=""
编辑为 ZSH_THEME="agnoster"
,按下esc
键,退出编辑,:wq
保存退出,修改成功!
ZSH_THEME="agnoster"
第二种方式
cd ~/Desktop/
git clone https://github.com/fcamblor/oh-my-zsh-agnoster-fcamblor.git
cd oh-my-zsh-agnoster-fcamblor/
./install
将主题修改为ZSH_THEME="agnoster"
vim ~/.zshrc
输入i
进入编辑模式,将ZSH_THEME=""
编辑为 ZSH_THEME="agnoster"
,按下esc
键,退出编辑,:wq
保存退出,修改成功!
ZSH_THEME="agnoster"
五、Powerline字体下载安装
iTerm2 改为主题之后,会出现乱码的情况。需要安装Meslo字体来解决。
第一种方式:
下载地址:Meslo LG M Regular for Powerline.ttf,下载后直接安装。
第二种方式:
安装PowerLine
powerline官网
安装powerline的方式依然简单,也只需要一条命令:
pip install powerline-status --user
没有安装pip的同学可能会碰到zsh: command not found: pip。
使用命令安装pip即可:
sudo easy_install pip
安装后再次执行安装powerline的命令即可。
安装PowerFonts
安装字体库需要首先将项目git clone至本地,然后执行源码中的install.sh。
# git clone
git clone https://github.com/powerline/fonts.git --depth=1
# cd to folder
cd fonts
# run install shell
./install.sh
然后打开iTerm2,打开Preferences配置界面,然后Profiles -> Text -> Font -> Chanage Font
,选择 Meslo LG M Regular for Powerline 字体。
六、声明高亮
第一种方式:
- 特殊命令和错误命令,会有高亮显示,使用Homebrew安装:
brew install zsh-syntax-highlighting
- 安装成功后,编辑vim ~/.zshrc文件,在最后一刚增加下面配置:
source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
- 执行 source ~/.zshrc 使生效
source ~/.zshrc
第二种方式:
这是oh my zsh的一个插件,安装方式与theme大同小异:
cd ~/.oh-my-zsh/custom/plugins/
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git
vi ~/.zshrc
这时我们再次打开zshrc文件进行编辑。找到plugins,此时plugins中应该已经有了git,我们需要把高亮插件也加上:
plugins=(
git
zsh-syntax-highlighting
)
请务必保证插件顺序,zsh-syntax-highlighting必须在最后一个。
然后在文件的最后一行添加:
source ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
按一下esc调出vi命令,输入:wq保存并退出vi模式。
执行命令使刚才的修改生效:
source ~/.zshrc
七、自动填充建议
跟代码高亮的安装方式一样,这也是一个zsh的插件,叫做zsh-autosuggestion,用于命令建议和补全。
这个功能是非常实用的,可以方便我们快速的敲命令。
配置步骤,先克隆zsh-autosuggestions项目,到指定目录:
cd ~/.oh-my-zsh/custom/plugins/
git clone https://github.com/zsh-users/zsh-autosuggestions
然后编辑vim ~/.zshrc
文件
vi ~/.zshrc
找到plugins,找到plugins配置,增加zsh-autosuggestions
插件。
plugins=(
git
zsh-autosuggestions
zsh-syntax-highlighting
)
效果图
补全命令的字体不太清晰,与背景颜色太过相近,其实可以自己调整一下字体颜色。
Preferences -> Profiles -> Colors 中有Foreground是标准字体颜色,ANSI Colors中Bright的第一个是补全的字体颜色。
八、 iTerm2快速隐藏和显示窗体
打开iterm2,打开Preferences配置界面,然后Profiles → Keys →Hotkey,自定义一个快捷键就可以了。
九、 iTerm2隐藏用户名和主机名
有时候我们的用户名和主机名太长,比如我的MacBook-Pro
,终端显示的时候会很不好看,我们可以手动去除。
编辑 vim ~/.zshrc
文件,增加 DEFAULT_USER="xu"
配置,可在文本最后追加,我们可以通过whoami
命令,查看当前用户
十、iTerm2更换背景图片方式
iTerm2 -> Preferences -> Profiles -> Window -> BackGround Image勾选图片即可。
十一、iTerm2 快捷命令
command + enter 进入与返回全屏模式
command + t 新建标签
command + w 关闭标签
command + 数字 command + 左右方向键 切换标签
command + enter 切换全屏
command + f 查找
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 搜索命令历史
参考:iTerm配置
iTerm配置