4

iterm2是一个更好替代Mac自带终端与iterm的软件

iterm2官方文档

基本

1. 快捷键汇总

快捷键 作用
⌘ + n 新建窗口
⌘ + t 新建标签页
⌘ + w 关闭当前标签页
⌘ + enter 进入与返回全屏模式
⌘ + r 换到新一屏,其实是滚到新的一屏,并没有清空
⌘ + d 横着分屏
⌘ + shift + d 竖着分屏
⌘ + 方向键 切换标签页
⌘ + opt + 方向键 切换到指定位置的分屏
⌘ + ]和⌘ + [ 在最近使用的分屏直接切换
⌘ + ; 历史命令自动完成
⌘ + shift + h 会列出剪切板历史
⌘ + 数字 查找 ,所查找的内容会被自动复制 ,输入查找的部分字符,tab后匹配,shift+tab前匹配
⌘ + / 找到当前光标位置,有时会很有用
shift + ⌘ + s 保存当前窗口快照
⌘ + opt + b 快照回放
⌘ + opt + e 打开标签Exposé,并支持搜索
⌘ + —/+/0 调整字体大小

2. 光标、文本快键键汇总

  • ctrl + u: 清空当前行

  • ctrl + a: 到行首

  • ctrl + e: 行末

  • ctrl + f/b: 前进后退,相当于左右方向键

  • ctrl + p: 上一条命令,相当于方向键上

  • ctrl + r: 搜索命令历史

  • ctrl + d: 删除当前字符

  • ctrl + h: 删除之前的字符

  • ctrl + w: 删除光标前的单词

  • ctrl + k: 删除到文本末尾

  • ctrl + t: 交换光标处文本

3. 功能详细

Exposé 标签

⌘ + opt + e 打开标签Exposé,并支持搜索。如图:

clipboard.png

快照保存和回放

shift + ⌘ + s: 保存当前窗口快照。
⌘ + opt + b: 快照回放。
你可以对你的操作根据时间轴进行回放。可以拖动下方的时间轴,也可以按左右方向键。如图:快照回放

clipboard.png

选中即复制

iterm2有2种好用的选中即复制模式。

  • 一种是用鼠标,在iterm2中,选中某个路径或者某个词汇,那么,iterm2就自动复制了。

  • 另一种是无鼠标模式,command+f,弹出iterm2的查找模式,输入要查找并复制的内容的前几个字母,确认找到的是自己的内容之后,输入tab,查找窗口将自动变化内容,并将其复制。如果输入的是shift+tab,则自动将查找内容的左边选中并复制。

clipboard.png

屏幕切割

  • command+d:垂直分割;

  • command+shift+d:水平分割

clipboard.png

系统热键

如下图,设置好系统热线之后,将在正常的浏览器或者编辑器等窗口的上面,以半透明窗口形式直接调出iterm2 shell。

clipboard.png

按下同样的系统热键之后,将自动隐藏。这样非常有利于随时随地处理。

剪切历史

输入command+shift+h,iterm2将自动列出剪切板的历史记录。如果需要将剪切板的历史记录保存到磁盘,在Preferences > General > Save copy/paste history to disk.中设置。

clipboard.png

iTerm2自动登录远程服务器

在iTerm2下ssh不能自动登录,不自动登录每次输入命令太麻烦了。这里介绍一个采取expect脚本的方式实现iTerm2下ssh自动登录。

1. 新建一个expect脚本 login.exp

#!/usr/bin/expect  

if { [llength $argv] < 4 } {
    puts "Usage:  $argv0 ip port user passwd"
    exit 1
} 

set ip [lindex $argv 0]
set port [lindex $argv 1]
set user [lindex $argv 2]
set passwd [lindex $argv 3]
set timeout 30  

spawn ssh -q -l$user -p$port $ip
 
expect {
    "assword:" {
        send "$passwd\r"
    }
    "FATAL" {
        puts "\nCONNECT ERROR: $ip occur FATAL ERROR!!!\n"
        exit 1
    }
    "No route to host" {
        puts "\nCONNECT ERROR: $ip No route to host!!!\n"
        exit 1
    }
}


puts "\n--> Connected: $ip, pls enjoy yourself!\n"
interact

该脚本需要四个参数,

  1. 远程地址

  2. 远程端口

  3. 远程用户名

  4. 用户密码

2. 将expect脚本copy到$PATH下(例如/usr/local/bin)

cp login.exp /usr/local/bin/login.exp

或者自己拷贝过去。

3. 在iterm2中设置登录脚本,用command+o的方式呼出profiles,点击Edit Profiles

clipboard.png

接着新建一个Profile,这里以我的webserver为例

clipboard.png

在红色涂抹的部分分别制定设置脚本、以及上面的四个参数。如

login.exp 地址 端口 用户名 密码

之间用空格分离。

4.使用

配好后,只要command+o的方式呼出profiles,双击需要打开的Profile。

参考

iTerm2新手应知特色功能
打造好用的终端 —— iTerm2 别样设置


人云思云
4.5k 声望525 粉丝

爱技术&爱艺术&爱生活