讓你提高命令行效率的 Bash 快捷鍵

生活在 Bash shell 中,熟記如下快捷鍵,將極大的提升你的命令行操做效率。

編輯命令

  • Ctrl + a :移到命令行首
  • Ctrl + e :移到命令行尾
  • Ctrl + f :按字符前移(右向)
  • Ctrl + b :按字符後移(左向)
  • Alt + f :按單詞前移(右向)
  • Alt + b :按單詞後移(左向)
  • Ctrl + xx:在命令行首和光標之間移動
  • Ctrl + u :從光標處刪除至命令行首
  • Ctrl + k :從光標處刪除至命令行尾
  • Ctrl + w :從光標處刪除至字首
  • Alt + d :從光標處刪除至字尾
  • Ctrl + d :刪除光標處的字符
  • Ctrl + h :刪除光標前的字符
  • Ctrl + y :粘貼至光標後
  • Alt + c :從光標處更改成首字母大寫的單詞
  • Alt + u :從光標處更改成所有大寫的單詞
  • Alt + l :從光標處更改成所有小寫的單詞
  • Ctrl + t :交換光標處和以前的字符
  • Alt + t :交換光標處和以前的單詞
  • Alt + Backspace:與 Ctrl + w 相同相似,分隔符有些差異 [感謝 rezilla 指正]

從新執行命令

  • Ctrl + r:逆向搜索命令歷史
  • Ctrl + g:從歷史搜索模式退出
  • Ctrl + p:歷史中的上一條命令
  • Ctrl + n:歷史中的下一條命令
  • Alt + .:使用上一條命令的最後一個參數

控制命令

  • Ctrl + l:清屏
  • Ctrl + o:執行當前命令,並選擇上一條命令
  • Ctrl + s:阻止屏幕輸出
  • Ctrl + q:容許屏幕輸出
  • Ctrl + c:終止命令
  • Ctrl + z:掛起命令

Bang (!) 命令

  • !!:執行上一條命令
  • !blah:執行最近的以 blah 開頭的命令,如 !ls
  • !blah:p:僅打印輸出,而不執行
  • !$:上一條命令的最後一個參數,與 Alt + . 相同
  • !$:p:打印輸出 !$ 的內容
  • !*:上一條命令的全部參數
  • !*:p:打印輸出 !* 的內容
  • ^blah:刪除上一條命令中的 blah
  • ^blah^foo:將上一條命令中的 blah 替換爲 foo
  • ^blah^foo^:將上一條命令中全部的 blah 都替換爲 foo

友情提示

  1. 以 上介紹的大多數 Bash 快捷鍵僅當在 emacs 編輯模式時有效,若你將 Bash 配置爲 vi 編輯模式,那將遵循 vi 的按鍵綁定。Bash 默認爲 emacs 編輯模式。若是你的 Bash 不在 emacs 編輯模式,可經過 set -o emacs 設置。
  2. ^S、^Q、^C、^Z 是由終端設備處理的,可用 stty 命令設置。
相關文章
相關標籤/搜索