Linux 使用者必知:一分鐘掌握14個常用Linux命令列快捷鍵

博為峰網校發表於2018-10-29

前幾天有個朋友給我發訊息:"問你個問題,Linux 命令列有沒有快捷鍵一下從行末會到行頭?經常敲了很多命令發現忘加 sudo 了,然後把命令刪了重新敲一遍"。

正好藉此機會給不知道的朋友總結一下:

首先說說歷史記錄個數的 "HISTFILESIZE" 和 "HISTSIZE"的區別

預設情況下 HISTFILESIZE 和 HISTSIZE的值都是 500,表示可以記錄 500 條命令記錄。

· HISTFILESIZE 表示記錄在檔案中的命令條數

· HISTSIZE 表示記錄在記憶體中的命令條數

當我們在 shell 命令列執行命令的時候,最近的 HISTSIZE 條命令被儲存在記憶體當中可以使用上下游標或者 ctrl+p,ctrl+n 上下查詢命令。

當退出 shell 時 HISTFILESIZE 條命令被儲存到歷史命令檔案中,下次登入 shell 時會從歷史命令檔案中讀取命令道記憶體歷史命令道中。

當網路中斷等異常時,你會發現之前的歷史命令,下次登入時用上下游標找不到上次的歷史命令,所以要正常退出或者傳送探測包保持 shell 線上。

如果想增加歷史命令儲存的數量,可以在 ~/.bash_profile 中手動修改 HISTFILESIZE 和 HISTSIZE 這兩個變數的值。

必須知道的Linux命令列

我想提一下一些快捷鍵可能依賴於你使用的 Shell。 Bash 是最受歡迎的 shell,所以列出的快捷鍵集中在 Bash。 如果你願意,你也可以稱其為 Bash 快捷鍵列表。

注意我在鍵盤快捷鍵中使用了大寫字母,但這並不意味著你在使用快捷鍵時必須按下 shift 鍵。

常用

1. Tab

這是你不能沒有的 Linux 快捷鍵。它將節省你 Linux 命令列中的大量時間。

只需要輸入一個命令,檔名,目錄名甚至是命令選項的開頭,並敲擊 tab 鍵。它將自動完成你輸入的內容,或為你顯示全部可能的結果。

如果你只記一個快捷鍵,這將是必選的一個。

2. Ctrl + C

這些是為了在終端上中斷命令或程式該按的鍵。它將立刻終止執行的程式。

如果你想要停止使用一個正在後臺執行的程式,只需按下這對組合鍵。

3. Ctrl + Z

該快捷鍵將正在執行的程式送到後臺。 通常,你可以在使用 & 選項執行程式前之完成該操作, 但是如果你忘記使用選項執行程式,就使用這對組合鍵。

4. Ctrl + D

這對鍵盤快捷鍵將使你退出當前終端。如果你使用 SSH 連線,它將會關閉。 如果你直接使用一個終端,該應用將會立刻關閉。

把它當成"退出"命令。

5. Ctrl + L

你怎麼清空你的終端螢幕?我猜是用 clear 命令。

你可以使用 Ctrl+L 清空終端,代替輸入 C-L-E-A-R。得心應手,不是嗎?

6. Ctrl + A

該快捷鍵將移動游標到所在行首。

假設你在終端輸入了一個很長的命令或路徑,並且你想要回到它的開頭, 使用方向鍵移動游標將花費大量時間。注意你無法使用滑鼠移動游標到行首。

這是 Ctrl+A 節省時間的地方。

7. Ctrl + E

這對快捷鍵與 Ctrl+A 相反。 Ctrl+A 送游標到行首,反之 Ctrl+E 移動游標到行尾。

8. Ctrl + U

輸入了錯誤的命令? 代替用退格鍵來丟棄當前命令,使用 Linux 終端中的 Ctrl+U 快捷鍵。 該快捷鍵會擦除從當前游標位置到行首的全部內容。

9. Ctrl + K

這對和 Ctrl+U 快捷鍵有點像。 唯一的不同在於不是行首,它擦除的是從當前游標位置到行尾的全部內容。

10. Ctrl + W

你剛才瞭解了擦除到行首和行尾的文字。 但如果你只需要刪除一個單詞呢?使用 Ctrl+W 快捷鍵。

使用 Ctrl+W 快捷鍵,你可以擦除游標位置前的單詞。 如果游標在一個單詞本身上,它將擦除從游標位置到詞首的全部字母。

最好的方法是用它移動游標到要刪除單詞後的一個空格上, 然後使用 Ctrl+W 鍵盤快捷鍵。

11. Ctrl + Y

這將貼上使用 Ctrl+W,Ctrl+U 和 Ctrl+K 快捷鍵擦除的文字。 如果你刪除了錯誤的文字或需要在某處使用已擦除的文字,這將派上用場。

12. Ctrl + P

你可以使用該快捷鍵來檢視上一個命令。 你可以反覆按該鍵來返回到歷史命令。 在很多終端裡,使用 PgUp 鍵來實現相同的功能。

13. Ctrl + N

你可以結合 Ctrl+P 使用該快捷鍵。Ctrl+N 顯示下一個命令。 如果使用 Ctrl+P 檢視上一條命令,你可以使用 Ctrl+N 來回導航。 許多終端都把此快捷鍵對映到 PgDn 鍵。

14. Ctrl + R

你可以使用該快捷鍵來搜尋歷史命令。

Ctrl+左右鍵:在單詞之間跳轉

Alt – d :由游標位置開始,往右刪除單詞。往行尾刪

說明

Ctrl – k: 先按住 Ctrl 鍵,然後再按 k 鍵;

Alt – k: 先按住 Alt 鍵,然後再按 k 鍵;

M – k:先單擊 Esc 鍵,然後再按 k 鍵。

移動游標

Ctrl – a :移到行首

Ctrl – e :移到行尾

Ctrl – b :往回(左)移動一個字元

Ctrl – f :往後(右)移動一個字元

Alt – b :往回(左)移動一個單詞

Alt – f :往後(右)移動一個單詞

Ctrl – xx :在命令列尾和游標之間移動

M-b :往回(左)移動一個單詞

M-f :往後(右)移動一個單詞

編輯命令

Ctrl – h :刪除游標左方位置的字元

Ctrl – d :刪除游標右方位置的字元(注意:當前命令列沒有任何字元時,會銷系統或結束終端)

Ctrl – w :由游標位置開始,往左刪除單詞。往行首刪

Alt – d :由游標位置開始,往右刪除單詞。往行尾刪

M – d :由游標位置開始,刪除單詞,直到該單詞結束。

Ctrl – k :由游標所在位置開始,刪除右方所有的字元,直到該行結束。

Ctrl – u :由游標所在位置開始,刪除左方所有的字元,直到該行開始。

Ctrl – y :貼上之前刪除的內容到游標後。

ctrl – t :交換游標處和之前兩個字元的位置。

Alt + . :使用上一條命令的最後一個引數。

Ctrl – _ :回覆之前的狀態。撤銷操作。

Ctrl -a + Ctrl -k 或 Ctrl -e + Ctrl -u 或 Ctrl -k + Ctrl -u 組合可刪除整行。

Bang(!)命令

!! :執行上一條命令。

^foo^bar :把上一條命令裡的foo替換為bar,並執行。

!wget :執行最近的以wget開頭的命令。

!wget:p :僅列印最近的以wget開頭的命令,不執行。

!$ :上一條命令的最後一個引數, 與 Alt - . 和 $_ 相同。

!* :上一條命令的所有引數

!*:p :列印上一條命令是所有引數,也即 !*的內容。

^abc :刪除上一條命令中的abc。

^foo^bar :將上一條命令中的 foo 替換為 bar

^foo^bar^ :將上一條命令中的 foo 替換為 bar

!-n :執行前n條命令,執行上一條命令: !-1, 執行前5條命令的格式是: !-5

查詢歷史命令

Ctrl – p :顯示當前命令的上一條歷史命令

Ctrl – n :顯示當前命令的下一條歷史命令

Ctrl – r :搜尋歷史命令,隨著輸入會顯示歷史命令中的一條匹配命令,Enter鍵執行匹配命令;ESC鍵在命令列顯示而不執行匹配命令。

Ctrl – g :從歷史搜尋模式(Ctrl – r)退出。

控制命令

Ctrl – l :清除螢幕,然後,在最上面重新顯示目前游標所在的這一行的內容。

Ctrl – o :執行當前命令,並選擇上一條命令。

Ctrl – s :阻止螢幕輸出

Ctrl – q :允許螢幕輸出

Ctrl – c :終止命令

Ctrl – z :掛起命令

重複執行操作動作

M – 操作次數 操作動作 : 指定操作次數,重複執行指定的操作。

總結:

在 Linux 下使用命令操作的時候,游標的移動令人頭痛。命令輸入完了,執行之後發現缺少許可權,然後不得不移動游標到行首,而命令又極長……以上是一些每個 Linux 使用者必須使用的鍵盤快捷鍵。使用命令列時,這些 Linux 快捷鍵將提升你的工作效率和效率。

歡迎加入  51軟體測試大家庭,在這裡你將獲得【最新行業資訊】,【免費測試工具安裝包】,【軟體測試技術乾貨】,【面試求職技巧】... 51與你共同學習,一起成長!期待你的加入: QQ                     群:                    755431660

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31407649/viewspace-2217964/,如需轉載,請註明出處,否則將追究法律責任。

相關文章