Bash Shell 快捷键的学习使用

这篇 Bash Shell Shortcuts 的快捷键总结的非常好。值得学习。下面内容大多数是拷贝粘贴与总结.

CTRL 键相关的快捷键:

Ctrl + a - Jump to the start of the line
Ctrl + b - Move back a char
Ctrl + c - Terminate the command  //用的最多了吧?
Ctrl + d - Delete from under the cursor
Ctrl + e - Jump to the end of the line
Ctrl + f - Move forward a char
Ctrl + k - Delete to EOL
Ctrl + l - Clear the screen  //清屏,类似 clear 命令
Ctrl + r - Search the history backwards  //查找历史命令
Ctrl + R - Search the history backwards with multi occurrence
Ctrl + u - Delete backward from cursor // 密码输入错误的时候比较有用
Ctrl + xx - Move between EOL and current cursor position
Ctrl + x @ - Show possible hostname completions
Ctrl + z - Suspend/ Stop the command
补充:
Ctrl + h - 删除当前字符
Ctrl + w - 删除最后输入的单词 

ALT 键相关的快捷键:

平时很少用。有些和远程登陆工具冲突。

Alt + < - Move to the first line in the history
Alt + > - Move to the last line in the history
Alt + ? - Show current completion list
Alt + * - Insert all possible completions
Alt + / - Attempt to complete filename
Alt + . - Yank last argument to previous command
Alt + b - Move backward
Alt + c - Capitalize the word
Alt + d - Delete word
Alt + f - Move forward
Alt + l - Make word lowercase
Alt + n - Search the history forwards non-incremental
Alt + p - Search the history backwards non-incremental
Alt + r - Recall command
Alt + t - Move words around
Alt + u - Make word uppercase
Alt + back-space - Delete backward from cursor 
// SecureCRT 如果没有配置好,这个就很管用了。

其他特定的键绑定:

输入 bind -P 可以查看所有的键盘绑定。这一系列我觉得更为实用。

Here "2T" means Press TAB twice
$ 2T - All available commands(common) //命令行补全,我认为是 Bash 最好用的一点
$ (string)2T - All available commands starting with (string)
$ /2T - Entire directory structure including Hidden one
$ ./2T - Only Sub Dirs inside including Hidden one
$ *2T - Only Sub Dirs inside without Hidden one
$ ~2T - All Present Users on system from "/etc/passwd" //第一次见到,很好用
$ $2T - All Sys variables //写Shell脚本的时候很实用
$ @2T - Entries from "/etc/hosts"  //第一次见到
$ =2T - Output like ls or dir //好像还不如 ls 快捷
补充:
Esc + T - 交换光标前面的两个单词

很多来自GNU 的 readline 库。另外一份总结也很好

记忆是所有技术人员的敌人。一次要把所有的都记住是不可能的。针对自己的使用习惯,对少数快捷键反复使用,短期内就会有效果。

你还知道那些好用的快捷键 ? 补充一下 ?

EOF


8 thoughts on “Bash Shell 快捷键的学习使用

  1. BeginneR

    很好用的东西 3x
    有个关于 2T 的没太弄明白:
    $ 2T – Only Sub Dirs inside including Hidden one
    这个我试了下,按照后面的解释,估计是 $ ./. 2T
    简单看了下 bind -P 的输出,好玩的真不少:
    digit-argument can be found on “\M–“, “\M-0”, “\M-1”, “\M-2”, “\M-3”, …
    start-kbd-macro can be found on “\C-x(“.
    end-kbd-macro can be found on “\C-x)”.
    undo can be found on “\C-x\C-u”, “\C-_”.

    大部分跟Emacs的键绑定一样 :)

    Reply
  2. Jashy

    上两层说的对,bash默认是类emacs的编辑风格,熟悉emacs的用着好。喜欢vi的可以用set -o vi换到vi的风格,就ESC h,j,k,l了。个人认为单行编辑vi更好些。当然set -o emacs就换回去了。

    Reply
  3. Pingback: Shell 快捷键 | 卑微的无聊

  4. Pingback: Bash Shell 快速鍵 - Tsung's Blog

Leave a Reply

Your email address will not be published. Required fields are marked *