Linux命令行快捷键

Linux命令行快捷键

涉及在linux命令行下进行快速移动光标、命令编辑、编辑后执行历史命令、Bang(!)命令、控制命令等。让basher更有效率。

常用

ctrl+左右键:在单词之间跳转  
* ctrl+a:跳到本行的行首  
* ctrl+e:跳到页尾  
Ctrl+u:删除当前光标前面的文字 (还有剪切功能)  
ctrl+k:删除当前光标后面的文字(还有剪切功能)  
Ctrl+L:进行清屏操作  
Ctrl+y:粘贴Ctrl+u或ctrl+k剪切的内容  
Ctrl+w:删除光标前面的单词的字符  
Alt – d :由光标位置开始,往右删除单词。往行尾删  
说明  
Ctrl – k: 先按住 Ctrl 键,然后再按 k 键;  
Alt – k: 先按住 Alt 键,然后再按 k 键;  
M – k:先单击 Esc 键,然后再按 k 键。  

移动光标

Ctrl – a :移到行首  
Ctrl – e :移到行尾    
Ctrl – b :往回(左)移动一个字符  
Ctrl – f :往后(右)移动一个字符  
Alt – b :往回(左)移动一个单词  
Alt – f :往后(右)移动一个单词  
Ctrl – xx :在命令行尾和光标之间移动  
M-b :往回(左)移动一个单词  
M-f :往后(右)移动一个单词  

编辑命令

Ctrl – h :删除光标左方位置的字符  
Ctrl – d :删除光标右方位置的字符(注意:当前命令行没有任何字符时,会注销系统或结束终端)  
Ctrl – w :由光标位置开始,往左删除单词。往行首删  
Alt – d :由光标位置开始,往右删除单词。往行尾删  
M – d :由光标位置开始,删除单词,直到该单词结束。  
Ctrl – k :由光标所在位置开始,删除右方所有的字符,直到该行结束。  
Ctrl – u :由光标所在位置开始,删除左方所有的字符,直到该行开始。  
Ctrl – y :粘贴之前删除的内容到光标后。  
ctrl – t :交换光标处和之前两个字符的位置。  
Alt + . :使用上一条命令的最后一个参数。  
Ctrl – _ :回复之前的状态。撤销操作。  
Ctrl -a + Ctrl -k 或 Ctrl -e + Ctrl -u 或 Ctrl -k + Ctrl -u 组合可删除整行。  

Bang(!)命令

!! :执行上一条命令。  
^foo^bar :把上一条命令里的foo替换为bar,并执行。  
!wget :执行最近的以wget开头的命令。  
!wget:p :仅打印最近的以wget开头的命令,不执行。  
!$ :上一条命令的最后一个参数, 与 Alt - . 和 $_ 相同。  
!* :上一条命令的所有参数  
!*:p :打印上一条命令是所有参数,也即 !*的内容。  
^abc :删除上一条命令中的abc。  
^foo^bar :将上一条命令中的 foo 替换为 bar  
^foo^bar^ :将上一条命令中的 foo 替换为 bar  
!-n :执行前n条命令,执行上一条命令: !-1, 执行前5条命令的格式是: !-5  

查找历史命令

Ctrl – p :显示当前命令的上一条历史命令
Ctrl – n :显示当前命令的下一条历史命令
* Ctrl – r :搜索历史命令,随着输入会显示历史命令中的一条匹配命令,Enter键执行匹配命令;ESC键在命令行显示而不执行匹配命令。
Ctrl – g :从历史搜索模式(Ctrl – r)退出。

控制命令

Ctrl – l :清除屏幕,然后,在最上面重新显示目前光标所在的这一行的内容。
Ctrl – o :执行当前命令,并选择上一条命令。
Ctrl – s :阻止屏幕输出
Ctrl – q :允许屏幕输出
Ctrl – c :终止命令
Ctrl – z :挂起命令

重复执行操作动作

M – 操作次数 操作动作 : 指定操作次数,重复执行指定的操作。