本文涉及在linux命令行下進行快速移動光標、命令編輯、編輯後執行歷史命令、Bang(!)命令、控制命令等。讓basher更有效率。
說明:
- ctrl + k:先按住ctrl不動,再按k;
- Alt + k:先按住Alt不動,再按k;
- Esc + k:先單擊Esc,再按k。
1. 常用命令
- ctrl+左右鍵:在單詞之間跳轉
- ctrl+a:跳到本行的行首
- ctrl+e:跳到行尾
- ctrl+u:刪除當前光標前面的文字 (還有剪切功能)
- ctrl+k:刪除當前光標後面的文字(還有剪切功能)
- ctrl+l:進行清屏操作
- ctrl+y:粘貼ctrl+u或ctrl+k剪切的內容
- ctrl+w:刪除光標前面的單詞的字符
- Alt – d :由光標位置開始,往右刪除單詞。往行尾刪
2. 移動光標
- ctrl+a:跳到本行的行首
- ctrl+e:跳到行尾
- ctrl + b :往回(左)移動一個字符
- ctrl + f :往後(右)移動一個字符
- Alt + b :往回(左)移動一個單詞
- Alt + f :往後(右)移動一個單詞
- ctrl + xx :在命令行首和光標之間移動
- Esc + b :往回(左)移動一個單詞
- Esc + f :往後(右)移動一個單詞
3. 編輯命令
- ctrl + h :刪除光標左方位置的字符
- ctrl + d :刪除光標右方位置的字符(注意:當前命令行沒有任何字符時,會註銷系統或結束終端)
- ctrl + w :由光標位置開始,往左刪除單詞。往行首刪
- Alt + d :由光標位置開始,往右刪除單詞。往行尾刪
- Esc + d :由光標位置開始,刪除單詞,直到該單詞結束。
- ctrl + k :由光標所在位置開始,刪除右方所有的字符,直到該行結束。
- ctrl + u :由光標所在位置開始,刪除左方所有的字符,直到該行開始。
- ctrl + y :粘貼之前刪除的內容到光標後。
- ctrl + t :交換光標處和之前兩個字符的位置。
- Alt + . :使用上一條命令的最後一個參數。
- ctrl + - :回覆之前的狀態。撤銷操作。
- ctrl + a 加 Ctrl -k 或 ctrl + e 加 ctrl + u 或 ctrl + k 加 ctrl + u 組合可刪除整行。
4. Bang(!)命令
輸入下面的命令後,再按回車。
- !!:執行上一條命令
- ^foo^bar :把上一條命令裏的foo替換爲bar,並執行。
- !wget :執行最近的以wget開頭的命令。
- !wget:p :僅打印最近的以wget開頭的命令,不執行。
- !$ :上一條命令的最後一個參數, 與 Alt + . 和 $_ 相同。
- !* :上一條命令的所有參數
- !*:p :打印上一條命令的所有參數,也即 !*的內容。
- ^abc :刪除上一條命令中的abc。
- !- n :執行前n條命令,執行上一條命令: ! -1, 執行前5條命令的格式是: !-5
5. 查找歷史命令
- ctrl + p :顯示當前命令的上一條歷史命令
- ctrl + n :顯示當前命令的下一條歷史命令
- ctrl + r :搜索歷史命令,隨着搜索信息的輸入會顯示歷史命令中的一條匹配的命令,Enter鍵執行匹配命令;ESC鍵在命令行顯示而不執行匹配命令。
- ctrl + g :從歷史搜索模式(ctrl + r)退出。
6. 控制命令
- ctrl + l :清除屏幕,然後,在最上面重新顯示目前光標所在的這一行的內容。
- ctrl + o :執行當前命令,並選擇上一條命令。
- ctrl + s :阻止屏幕輸出
- ctrl + q :允許屏幕輸出
- ctrl + c :終止命令
- ctrl + z :掛起命令
7. 重複執行操作動作
Esc + 操作次數 操作動作 : 指定操作次數,重複執行指定的操作。