有用的 Bash 快捷鍵清單

Sk發表於2018-03-11

有用的 Bash 快捷鍵清單

現如今,我在終端上花的時間更多,嘗試在命令列完成比在圖形介面更多的工作。隨著時間推移,我學了許多 BASH 的技巧。這是一份每個 Linux 使用者都應該知道的 BASH 快捷鍵,這樣在終端做事就會快很多。我不會說這是一份完全的 BASH 快捷鍵清單,但是這足夠讓你的 BASH shell 操作比以前更快了。學習更快地使用 BASH 不僅節省了更多時間,也讓你因為學到了有用的知識而感到自豪。那麼,讓我們開始吧。

ALT 快捷鍵

  1. ALT+A – 游標移動到行首。
  2. ALT+B – 游標移動到所在單詞詞首。
  3. ALT+C – 終止正在執行的命令/程序。與 CTRL+C 相同。
  4. ALT+D – 關閉空的終端(也就是它會關閉沒有輸入的終端)。也刪除游標後的全部字元。
  5. ALT+F – 移動到游標所在單詞詞末。
  6. ALT+T – 交換最後兩個單詞。
  7. ALT+U – 將單詞內游標後的字母轉為大寫。
  8. ALT+L – 將單詞內游標後的字母轉為小寫。
  9. ALT+R – 撤銷對從歷史記錄中帶來的命令的修改。

    正如你在上面輸出所見,我使用反向搜尋拉取了一個指令,並更改了那個指令的最後一個字母,並使用 ALT+R 撤銷了更改。

  10. ALT+. (注意末尾的點號) – 使用上一條命令的最後一個單詞。

如果你想要對多個命令進行相同的操作的話,你可以使用這個快捷鍵來獲取前幾個指令的最後一個單詞。例如,我需要使用 ls -r 命令輸出以檔名逆序排列的目錄內容。同時,我也想使用 uname -r 命令來檢視我的核心版本。在這兩個命令中,相同的單詞是 -r 。這就是需要 ALT+. 的地方。快捷鍵很順手。首先執行 ls -r 來按檔名逆序輸出,然後在其他命令,比如 uname 中使用最後一個單詞 -r

CTRL 快捷鍵

  1. CTRL+A – 快速移動到行首。

    我們假設你輸入了像下面這樣的命令。當你在第 N 行時,你發現在行首字元有一個輸入錯誤

    $ gind . -mtime -1 -type
    

    注意到了嗎?上面的命令中我輸入了 gind 而不是 find 。你可以透過一直按著左箭頭鍵定位到第一個字母然後用 g 替換 f 。或者,僅透過 CTRL+AHOME 鍵來立刻定位到行首,並替換拼錯的單詞。這將節省你幾秒鐘的時間。

  2. CTRL+B – 游標向前移動一個字元。

    這個快捷鍵可以使游標向前移動一個字元,即游標前的一個字元。或者,你可以使用左箭頭鍵來向前移動一個字元。

  3. CTRL+C – 停止當前執行的命令。

    如果一個命令執行時間過久,或者你誤執行了,你可以透過使用 CTRL+C 來強制停止或退出。

  4. CTRL+D – 刪除游標後的一個字元。

    如果你的系統退格鍵無法工作的話,你可以使用 CTRL+D 來刪除游標後的一個字元。這個快捷鍵也可以讓你退出當前會話,和 exit 類似。

  5. CTRL+E – 移動到行末。

    當你修正了行首拼寫錯誤的單詞,按下 CTRL+E 來快速移動到行末。或者,你也可以使用你鍵盤上的 END 鍵。

  6. CTRL+F – 游標向後移動一個字元。

    如果你想將游標向後移動一個字元的話,按 CTRL+F 來替代右箭頭鍵。

  7. CTRL+G – 退出歷史搜尋模式,不執行命令。

    正如你在上面的截圖看到的,我進行了反向搜尋,但是我執行命令,並退出了歷史搜尋模式。

  8. CTRL+H – 刪除游標前的一個字元,和退格鍵相同。
  9. CTRL+J – 和 ENTER/RETURN 鍵相同。

    Enter鍵不工作?沒問題! CTRL+JCTRL+M 可以用來替換Enter鍵。

  10. CTRL+K – 刪除游標後的所有字元。

    你不必一直按著刪除鍵來刪除游標後的字元。只要按 CTRL+K 就能刪除游標後的所有字元。

  11. CTRL+L – 清空螢幕並重新顯示當前行。

    別輸入 clear 來清空螢幕了。只需按 CTRL+L 即可清空並重新顯示當前行。

  12. CTRL+M – 和 CTRL+J 或 RETURN鍵相同。
  13. CTRL+N – 在命令歷史中顯示下一行。

    你也可以使用下箭頭鍵。

  14. CTRL+O – 執行你使用反向搜尋時發現的命令,即 CTRL+R。
  15. CTRL+P – 顯示命令歷史的上一條命令。

    你也可以使用上箭頭鍵。

  16. CTRL+R – 向後搜尋歷史記錄(反向搜尋)。
  17. CTRL+S – 向前搜尋歷史記錄。
  18. CTRL+T – 交換最後兩個字元。

    這是我最喜歡的一個快捷鍵。假設你輸入了 sl 而不是 ls 。沒問題!這個快捷鍵會像下面這張截圖一樣交換字元。

  19. CTRL+U – 刪除游標前的所有字元(從游標後的點刪除到行首)。

    這個快捷鍵立刻刪除前面的所有字元。

  20. CTRL+V – 逐字顯示輸入的下一個字元。
  21. CTRL+W – 刪除游標前的一個單詞。

    不要和 CTRL+U 弄混了。CTRL+W 不會刪除游標前的所有東西,而是隻刪除一個單詞。

  22. CTRL+X – 列出當前單詞可能的檔名補全。
  23. CTRL+XX – 移動到行首位置(再移動回來)。
  24. CTRL+Y – 恢復你上一個刪除或剪下的條目。

    記得嗎,我們在第 21 個命令用 CTRL+W 刪除了單詞“-al”。你可以使用 CTRL+Y 立刻恢復。

    看見了吧?我沒有輸入“-al”。取而代之,我按了 CTRL+Y 來恢復它。

  25. CTRL+Z – 停止當前的命令。

    你也許很瞭解這個快捷鍵。它終止了當前執行的命令。你可以在前臺使用 fg 或在後臺使用 bg 來恢復它。

  26. CTRL+[ – 和 ESC 鍵等同。

雜項

  1. !! – 重複上一個命令。
  2. ESC+t – 交換最後兩個單詞。

這就是我所能想到的了。將來我遇到 Bash 快捷鍵時我會持續新增的。如果你覺得文章有錯的話,請在下方的評論區留言。我會盡快更新。

Cheers!


via: https://www.ostechnix.com/list-useful-bash-keyboard-shortcuts/

作者:SK 譯者:heart4lor 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出