如何在 Linux 終端中輸入更少並更快地工作

已發表: 2022-08-11
顯示 bash 提示符的 Linux 筆記本電腦
fatmawati achmad zaenuri/Shutterstock.com

使用 Linux 意味著(遲早)使用命令行。 但是在終端窗口中鍵入命令可能會很慢且重複。 這些鍵盤提示將加速您的終端窗口體驗。

命令行

Linux 是一個命令行操作系統。 您可以選擇在其上放置桌面環境,例如 GNOME 或 KDE 桌面環境,但在其下方,自 1970 年代第一個 Unix 實現以來,文本界面仍然沒有真正改變。

在終端窗口中,Linux 使用諸如 Bash 之類的 shell 來讀取您的命令並自行對它們進行操作或將它們傳遞給適當的命令或應用程序。

Bash、Zsh 和其他 Linux Shell 之間有什麼區別?
相關Bash、Zsh 和其他 Linux Shell 之間有什麼區別?

新的 shell 已經發布,舊的 shell 幾乎全部退役,一些長期存在的 shell 已經更新。 無論如何,沒有改變的是用戶需要輸入命令。 用戶必須在命令行中輸入他們的指令,就像他們在半個世紀前所做的那樣。

命令必須拼寫正確,並且因為它們區分大小寫,所以每個字母的大小寫也必須正確。 命令還包含各種符號,如果它們涉及文件系統路徑,它們可能會非常長。 命令越長,包含的異常符號越多,出錯的風險就越大。

學習無數的 Linux 命令並利用命令行的力量已經足夠困難了,而無需處理拼寫錯誤和其他鍵盤事故。

我們將向您展示的提示、技巧和技術將使使用命令行變得更快、更有成效。

相關:命令行:為什麼人們仍然為它們煩惱?

製表符完成

如果您提供足夠的字母讓 shell 匹配命令、文件名或目錄名,點擊“Tab”鍵將在命令行中為您插入匹配的命令、文件名或目錄名。

在我們的測試計算機上的主目錄中,我們鍵入:

 光盤文件

開始鍵入目錄名稱

然後我們點擊“Tab”鍵。

目錄名稱自動完成

為我們添加了其餘的“文檔”。 您可以繼續這樣做以充實整個路徑。

 cd 文件/專業版

開始鍵入子目錄名稱

我們知道我們的“Documents”目錄中有一個名為“projects”的目錄,因此輸入“pro”並點擊“Tab”也為我們完成了這項工作。

子目錄名稱自動完成

如果您不記得下一個目錄的名稱以什麼開頭,請按兩次“Tab”,shell 將顯示可能的目錄列表。 然後,它會使用您輸入的命令填充命令行,並等待更多輸入。

輸入你想要的目錄的幾個字母——足以將它與其他條目區分開來——然後點擊“Tab”讓shell將它添加到你的命令行中。

子目錄列表

如果您沒有輸入足夠的字符來唯一標識您想要的目錄,您將看到與您目前輸入的內容相匹配的目錄列表。

 cd 文件/項目/帳篷- 

匹配子目錄的子集

使用“選項卡”生成目錄路徑是提高生產力的一種簡單方法。 Tab 補全也很聰明,它對不同的命令表現不同。 如果您使用ls而不是cd ,它知道它應該包括文件和目錄。

 ls 文件/項目/ 

文件和目錄列表

點擊“Tab”兩次包括可能匹配中的文件。

您也可以將“Tab”與命令名稱一起使用。 假設您想使用systemctl命令啟用守護程序。 輸入“sudo sys”並點擊“Tab”兩次。

 須藤系統

“系統”的選項卡完成選項

您將看到所有以“sys”開頭的命令。

將“temc”添加到您的命令中,然後再次點擊“Tab”以完成“systemctl”。 現在輸入“en”並點擊“Tab”。

 sudo systemctl en 

通過 systemctl enable 使用 tab 補全

“啟用”一詞的其餘部分將添加到您的命令行中。

systemctl 命令的“啟用”自動完成

避免打字錯誤的最好方法是不打字。 使用“Tab”,讓 shell 為你做這件事。

編輯鍵盤快捷鍵

儘管製表符補全有幫助,但您仍然會發現自己需要遍歷您鍵入的命令並進行更改。

Bash(又名 Linux 和 macOS 終端)的最佳鍵盤快捷鍵
相關Bash(又名 Linux 和 macOS 終端)的最佳鍵盤快捷鍵

有一堆快捷鍵可以加快你的移動速度並在命令行上進行編輯。 將這些鎖定到您的肌肉記憶中,您將永遠不會再按住箭頭鍵,等待光標來回跟踪。

  • Ctrl+A :移動到行首。 與Home相同。
  • Ctrl+E :移動到行尾。 與End相同。
  • Alt+F一次一個字地向前移動。 與Ctrl+右箭頭相同。
  • Alt+B一次一個字地向後移動一行。 與Ctrl+向左箭頭相同。
  • Ctrl+F一次一個字母地向前移動。 與右箭頭相同。
  • Ctrl+B : 向後移動一行一個字母。 與左箭頭相同。

這些快捷方式刪除文本。

  • Ctrl+U :從光標位置刪除到行首。
  • Ctrl+K :從光標位置刪除到行尾。
  • Ctrl+W :刪除左邊的一個單詞。 與Alt+Backspace相同。
  • Alt+D :刪除右側的一個單詞。
  • Ctrl+/ :撤消。 是的,命令行有一個撤消選項。

快速的“Ctrl+U, Ctrl+K”將刪除整行。

歷史命令

為什麼還要重新輸入你已經輸入過一次的東西呢? Bash 將您以前的命令存儲在命令歷史記錄中,並允許您重播任何命令。

相關:如何在 Linux 上使用 history 命令

在命令行中,您可以使用向上箭頭鍵和向下箭頭鍵瀏覽命令列表。 按 Enter 將執行顯示的命令。 您可以使用history命令查看完整的命令列表。

 歷史

歷史命令

命令已編號。

歷史命令的輸出

要重播任何命令,請使用感嘆號“!” 緊隨其後的是要重用的命令的編號。 不要在感嘆號後面加上空格。

 !1102 

重播命令 1102

您可以使用命令本身的開頭來代替命令的編號。 例如,如果您使用!gedit ,shell 將執行您使用的最後一個以“gedit”開頭的命令。

 !gedit 

使用搜索線索重播命令,而不是數字

為了安全起見,您可能需要使用:p (打印)修飾符。 這將打印命令但不執行它。 同樣,不要在命令中包含任何空格。

 !gedit:p 

打印命令而不是執行它

如果找到的命令是您想要運行的命令,您可以通過按向上箭頭鍵將其放回命令行,然後按 Enter 來運行它。 當然,如果需要修改,您可以按向上箭頭鍵,然後在按 Enter 之前編輯命令。

兩個感嘆號“ !! ” 代表最後一個命令。 如果您忘記在命令中使用sudo ,只需輸入“sudo !!” 使用sudo重新運行最後一個命令。

須藤!!

使用 !!重複上一個命令

另一個有用的花絮是您可以使用 Alt+。 (句點)將上一個命令的最後一個單詞附加到命令行。

交互式歷史搜索

按 Ctrl+R 開始搜索。 然後鍵入您要查找的命令的幾個字母,然後按 Ctrl+R。

 sudo apt 

使用 Ctrl+r 交互式搜索

如果顯示匹配但不是您想要的命令,請再次按 Ctrl+R 跳轉到下一個匹配。 繼續按 Ctrl+R,直到看到所需的命令。

使用 Ctrl+r 重複搜索

按 Enter 將執行命令,按 Home、End、右箭頭或左箭頭將讓您在運行命令之前對其進行編輯。

Ctrl+G 將退出搜索而不做任何事情。

其他有用的快捷方式

這些快捷方式也是必備的。

  • cd :帶你到你的主目錄。 與cd ~命令相同。
  • cd – :在您最近的兩個目錄之間來回跳轉。
  • Ctrl+l” :清除終端窗口。 與 clear 命令相同,但不會阻塞您的歷史記錄。
  • Ctrl+d :關閉終端窗口。 與 exit 命令相同,但不會阻塞您的歷史記錄。
  • 超級鍵+箭頭鍵:將終端窗口捕捉並調整到屏幕左側和右側,全尺寸,然後恢復到通常尺寸。

如何學習這些擊鍵

列出聽起來最有用的命令,並將它們寫在一張紙上。 保持關閉,參考它,並使用這些擊鍵。

一旦你把這些都搞定了,就開始一個新的候選名單。

相關:你應該知道的 37 個重要的 Linux 命令