码迷,mamicode.com
首页 > 其他好文 > 详细

终端快捷键列表

时间:2015-07-17 12:06:10      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:

---
layout: post
title:  "终端快捷键列表"
date:   2013-06-20
---

## 引言
  
  大多数系统  Shell 默认使用 Bash。如果你是一个 Emacs 用户,不经意在 Bash 按下 C-a,发现竟然可以跳至命令行的开头,C-e 跳至命令行行尾,C-p/C-n 可以调出上一条/下一条历史命令……这些不是巧合。

  是的,Bash 支持命令行编辑,允许使用许多不同的按键控制命令行上输入的内容。尤其需要指出的是,Bash 支持 Vi/Emacs 命令查看、修改我们在命令行上输入的内容。不用惊奇,Shell 不允许它们同时生效,这样你就可以避免同时处于 Vi 和 Emacs 模式之中了。

  Shell 默认使用 Emacs 命令,称之为 Emacs 模式。当然,我们可以通过下面操作随意切换模式。

<code>
//Bash Shell
$ set -o vi #切换至 Vi 模式
$ set -o emacs #由 Vi 模式切回到 Emacs 模式

//Zsh
$ bindkey -v #设为 Vi 模式
$ bindkey -e #设为 Emacs 模式
</code>

  下面,我们重点介绍 Bash Emacs 模式下的快捷键。这里列举的操作快捷键与 Emacs 中的不尽相同。

## 编辑命令

<pre>
  C 代表 Ctrl,C-a 表示按住 Ctrl 键不放再按下 a
  M 为修饰键,一般为 Alt,M-f 表示按住 Alt 键不放再按下 f
</pre>
  
### 移动
<table>
<tr>
<td>C-a</td><td>跳至命令行开头</td>
</tr>
<tr>
<td>C-e</td><td>跳至命令行行尾</td>
</tr>
<tr>
<td>C-f</td><td>向前移动一个字符(chracter)</td>
</tr>
<tr>
<td>C-b</td><td>向后移动一个字符</td>
</tr>
<tr>
<td>M-f</td><td>向前移动一个单词(word)</td>
</tr>
<tr>
<td>M-b</td><td>向后移动一个单词</td>
</tr>
</table>

### 删除
<table>
<tr>
<td>C-k</td><td>删除当前光标位置到命令行行尾的全部字符(包括光标所在字符)</td>
</tr>
<tr>
<td>C-u</td><td>删除当前光标位置到命令行行首的全部字符(不包括光标所在字符)</td>
</tr>
<tr>
<td>C-w</td><td>删除光标前的一个单词</td>
</tr>
<tr>
<td>C-d</td><td>删除光标所在的字符</td>
</tr>
<tr>
<td>C-h</td><td>删除光标前的一个字符,同 Backspace 键<td></td>
</tr>
<tr>
<td>M-d</td><td>删除光标位置到光标所在单词末尾</td>
</tr>
<tr>
<td>C-y</td><td>粘贴刚删除的内容</td>
</tr>
<tr>
<td>C-t</td><td>交换光标所在字符与其前的字符</td>
</tr>
<tr>
<td>M-t</td><td>交换光标所在的单词与前面单词的位置</td>
</tr>
</table>

### 搜索
<table>
<tr>
<td>C-p</td><td>上一条命令</td>
</tr>
<tr>
<td>C-n</td><td>下一条命令</td>
</tr>
<tr>
<td>C-r</td><td>逆向搜索命令历史记录(按下 C-g 退出搜索)</td>
</tr>
<tr>
<td>C-s</td><td>(对 Zsh)正向搜索命令历史记录(按下 C-g 退出搜索),Bash 则锁住屏幕,按下 C-q 解锁屏幕</td>
</tr>
</table>

### 更多
<table>
<tr>
<td>C-m</td><td>相当于“回车键”</td>
</tr>
<tr>
<td>C-i</td><td>相当于 Tab</td>
</tr>
<tr>
<td>C-[</td><td>相当于 Esc</td>
</tr>
<tr>
<td>C-l</td><td>清屏</td>
</tr>
<tr>
<td>C-c</td><td>中断命令输入</td>
</tr>
<tr>
<td>C-d</td><td>退出 Shell</td>
</tr>
<tr>
<td>Shift+→/←</td><td>Konsole 中切换多标签页</td>
</tr>
<tr>
<td>Ctrl+PageDown/PageUp</td><td>Gnome Terminal 中切换多标签页</td>
</tr>
</table>

## 更多资料

+ [Bash Manual](https://www.gnu.org/software/bash/manual/bashref.html#Command-Line-Editing)

版权声明:本文为博主原创文章,未经博主允许不得转载。

终端快捷键列表

标签:

原文地址:http://blog.csdn.net/soledadzz/article/details/46924439

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!