21 個專業 Linux 用戶喜愛的實用終端快捷鍵
學習 Linux 命令無疑是你的首要任務,但當你能熟練 運用命令行 之後,有另一樣東西值得你去關注。
如果你不知道如何利用它們提升終端會話的效率,那你就無法真正理解它們的重要性。
在本教程中,我將為你詳細講解頂級的終端快捷鍵,並且舉例說明它們的用法。
在我逐一解釋快捷鍵之前,先來看一下這個備忘錄,它對我將在本教程中討論的內容進行了概覽:
快捷鍵 | 功能描述 |
---|---|
Ctrl + A |
游標快速跳至行首。 |
Ctrl + E |
游標快速跳至行尾。 |
Ctrl + U |
刪除游標至行首的所有內容。 |
Ctrl + K |
刪除游標至行尾的所有內容。 |
Ctrl + W |
刪除游標前的一個單詞。 |
Ctrl + L |
清空整個終端屏幕。 |
Ctrl + C |
停止正在執行的進程或命令。 |
Ctrl + D |
註銷或退出終端。 |
Ctrl + Z |
暫停正在執行的進程(之後可恢復執行)。 |
Ctrl + R |
在命令歷史中進行逆向搜索。 |
上箭頭 ↑ |
從命令歷史中顯示先前的命令。 |
下箭頭 ↓ |
從命令歷史中顯示後續的命令。 |
!! |
重複執行最近的命令。 |
!n |
重複執行命令歷史中的第 n 條命令。 |
Tab |
自動補全命令,文件名或目錄名。 |
連續按 Tab 兩次 |
列出所有可能的補全選項。 |
Ctrl + Shift + C |
複製所選文本或命令。 |
Ctrl + Shift + V |
粘貼已複製的文本或命令。 |
Ctrl + Shift + N |
打開新的終端窗口。 |
Ctrl + Shift + T |
在當前終端中打開新的選項卡。 |
Ctrl + Tab 或 Ctrl + PageDown |
在終端的選項卡之間切換。 |
? 雖然我在這篇文章中用的是大寫字母,但實際上我們不需要使用大寫來輸入它們。比如
Ctrl+A
,意思是同時按下Ctrl
鍵和A
鍵,並不意味著需要同時按下Shift
鍵和a
鍵來輸入大寫的A
。
接下來,我們更詳細地看看這些快捷鍵如何使用。
1、Ctrl + A:游標切換至行首
當你在終端中按下 Ctrl + A
組合鍵,游標就會迅速跳到命令的起始處。這個功能在你需要修改一條長命令序列起始部分的時候十分實用。
例如,在以下示例中,你可以看到無論游標處在何位置,只需按下 Ctrl + A
,游標就會立刻跳轉至行首:
2、Ctrl + E:游標切換至行尾
在使用終端的過程中,如果你想迅速跳到當前行的末尾,直接按下 Ctrl + E
組合鍵就可以了。
在下面的示例中,我使用了一段樣本文本,並按下 Ctrl + E
來快速移動到行尾:
3、Ctrl + U:刪除游標位置至行首的內容
有些時候,你可能需要刪除從游標位置到行首的所有內容。
此時,你只需使用左箭頭鍵將游標移動至你想要開始刪除的位置,然後按下 Ctrl + U
:
? 在輸完
sudo
命令輸入密碼時,不確定是否輸入正確?沒必要用退格鍵一路刪除,只需簡單地使用Ctrl+U
快捷鍵重新開始輸入密碼即可。
4、Ctrl + K:從游標刪除至行尾
如你所猜想,當你按下 Ctrl + K
,它會移除游標至行尾的所有內容(游標位置右側的所有)。
使用這種快捷操作時,你先要把游標放在你想從那裡開始刪除的位置,然後按下 Ctrl + K
,如下圖展示的那樣:
5、Ctrl + W:刪除游標前的一個詞
我日常常用該快捷鍵,因為我時常打錯命令,需要刪除命令的一部分,這個時候只需要簡單地按 Ctrl + W
就可以了。
當你按下 Ctrl + W
鍵時,它只會刪除游標前的一個詞:
6、Ctrl + L:清理終端顯示(或者理解為整理顯示內容)
按下 Ctrl + L
並不會徹底地 清空終端顯示,但它可以整理顯示內容。如果你向上滾動,你還能找到之前的命令和執行記錄。
它與 clear
命令有所不同。clear
命令會消除歷史記錄,而且你會在命令歷史中找到 clear
命令的執行。
但是當你按下 Ctrl + L
時,它只是整理當前屏幕的顯示內容,並不會出現在歷史記錄中,因為它本身並不是一條命令。
比如在這個示例中,我執行了歷史命令,隨後按下 Ctrl + L
鍵進行了屏幕清理:
7、Ctrl + C:終止當前進程/執行
有沒有想要 停止進行中的命令,卻不知所措,最後只好關閉終端呢?解決辦法其實很簡單,按下 Ctrl + C
就行了。
當你按下這一組鍵時,它將發送 SIGINT
信號以終別過程。
例如,在這裡,我結束了正在執行的命令進程:
最後,你會看到 ^C
符號,表示你按下了 Ctrl + C
來中止當前執行。
但是,有些進程可能不會被 Ctrl + C
信號所中止,此時,你可以使用 Linux 中的其他 中止信號 來終止。
8、Ctrl + D:退出登錄或者退出終端
你總是可以使用 exit
命令來關閉 Shell 會話和終端。你也可以選擇使用 Ctrl+D
快捷鍵。
當你按 Ctrl + D
時,如果你正在 SSH 中使用,它會結束會話,如果再次按下,它將直接關閉終端:
9、Ctrl + Z:暫停當前進程
總是殺掉命令並不是個好主意,因為你有可能需要重新啟動過程。
這種情況下,你可以按 Ctrl + Z
來暫停當前的進程,然後可以從之前暫停的地方繼續。
例如,在這裡,我暫停了更新進程:
你想更多地了解 如何暫停命令及如何恢復它們 嗎?這裡有一篇為此準備的詳細指南:
10、Ctrl + R:搜索命令歷史
當你按 Ctrl + R
時,它會打開一個搜索模式的提示,從中你可以鍵入命令的任何部分,並將找到匹配你輸入的字元串的命令。
一旦你找到那個命令,只需按 Enter
鍵,它就會執行那個命令。
例如,在這裡,我搜索了 update
,返回的結果是在 Ubuntu 中的倉庫更新命令(sudo apt update
):
? 如果你對歷史記錄中的任何建議都不滿意,可以使用
Ctrl+C
退出搜索模式。
11、上箭頭:呈現命令歷史中的上一條
當你按下上箭頭 ↑
鍵時,命令歷史中之前執行過的命令將會按次序逐一顯示:
12、下箭頭:呈現命令歷史中的下一條
當你按下上箭頭 ↑
鍵時,它會展示先前的命令,但在有些情況下,你可能無意間點擊了多次,這時你希望展示之前已顯示過的命令。
這個時候,你可以使用下箭頭 ↓
鍵。
在以下圖示中,我首先多次按下了上箭頭鍵,然後為了返回到先前顯示的命令,我按下了下箭頭鍵:
?
Page Up
和Page Down
鍵也可以用於同樣的目的。
13、!!:重複最後一條命令
有時候,你可能需要重複執行一次或多次最近的命令,此時你只需要輸入 !!
(兩個感嘆號)即可:
!!
比如,在這裡,我執行了一個 echo
命令,隨後我用了 !!
來重複執行相同的命令:
但是,這個快捷鍵最常用且最實用的場景是,當你忘記給命令加上 sudo
。這樣你無需重新輸入整個命令,只需使用 sudo !!
就可以了
? 一個類似的鍵盤快捷鍵是
Alt+.
,這個快捷鍵會給你提供上一條命令的最後一個參數或部分。假設你剛使用了ls /etc/apt/sources.list.d
,現在你想進入這個目錄。只需輸入cd
然後使用Alt+.
就可以。這就如同你輸入cd /etc/apt/sources.list.d
一樣。
14、!n:重播歷史中的第 n 條命令
你可以通過執行 Bash 的 history
命令來查看命令歷史,每個命令都會有一個相應的索引號:
history
現在,假設我想要執行倒數第二個 echo
命令,我會這樣使用:
!1998
15、Tab:命令自動補全
我認為這應是終端快捷鍵列表的首個條目。
在輸入長命令時,你可以輸入一部分,然後點擊 Tab
鍵,它將為你進行自動補全。
例如,這裡,我通過 Tab
鍵來自動完成我的腳本執行:
16、Tab(連擊兩次):列出所有可能的自動補全
如果按 Tab
鍵無效果,那可能是因為當前輸入的命令存在多種可能。
在這種場合,你可以連擊兩次 Tab
鍵,以列出所有可能的補全選項:
✋ 接下來的一些快捷鍵取決於終端的模擬器。雖然這些快捷鍵應該適用於大多數的終端應用,但不能完全確定。
17、Ctrl + Shift + C:複製所選文本
複製終端中的文本,你需要先用滑鼠選取文本,然後按下 Ctrl + Shift + C
來複制選中的內容:
18、Ctrl + Shift + V:粘貼已複製的文本
當你通過選取和按下 Ctrl + Shift + C
複製了文本後,你可以通過按下 Ctrl + Shift + V
在任何地方粘貼:
19、Ctrl + Shift + N:打開新的終端窗口
當你按下 Ctrl + Shift + N
時,會打開一個新的終端窗口,且新窗口的工作目錄與之前那個窗口內的工作目錄相同:
20、Ctrl + Shift + T:開啟新的終端標籤頁
就像使用網路瀏覽器一樣,終端也支持開啟多個標籤頁來進行不同的任務。要開啟一個新的標籤頁,只需按下 Ctrl + Shift + T
就可以了:
21、Ctrl + Tab 或 Ctrl + PageDown:切換標籤頁
如果你按照之前的方式創建了多個標籤頁,你或許需要在它們之間進行切換。
為此,你可以使用 Ctrl + Tab
或 Ctrl + PageDown
:
? 這可能更多是 Ubuntu 的功能。你可以通過 按下 Ctrl+Alt+T 鍵來打開新的終端窗口。
接下來:必知的 Linux 命令
你喜歡這個「必備」鍵盤快捷鍵列表嗎?可能你會對 最基本卻必備的 Linux 命令列表 也感興趣:
我明白起初你可能不容易記住所有這些終端快捷鍵。但通過不斷實踐,它們會逐漸深入你的肌肉記憶。
另外,你有一些沒有在這裡列出的鐘愛的快捷鍵嗎?歡迎在評論區分享。
(題圖:MJ/992e3559-4ed7-4529-9aea-85d52484cccf)
via: https://itsfoss.com/linux-terminal-shortcuts/
作者:Sagar Sharma 選題:lujun9972 譯者:ChatGPT 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive