歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> 命令歷史和Tab自動補全

命令歷史和Tab自動補全

日期:2017/2/27 14:17:30   编辑:更多Linux
13.12. 命令歷史和 Tab 自動補全

用不了多久,你就會感覺到一遍遍地重復鍵入相同命令並不是那麼激動人心。一個小小的鍵入錯誤會破壞整個命令行。

解決辦法之一是使用命令行歷史。通過使用 [向上箭頭] 和 [向下箭頭] 鍵來上下滾動,你會發現許多前面已經鍵入過的命令。

我們可以再在 sneakers.txt (在 第 13.9.1 節 中創建的)文件中試驗一下。不過,第一次,讓我們在 shell 提示下鍵入:

cat sneakrs.txt

當然,什麼也不會發生,因為 sneakrs.txt 文件並不存在。沒問題,我們只需使用向上箭頭鍵來把這個命令取回,然後使用向左箭頭鍵把光標移到我們漏掉“e”的地方。插入這個字母後再按 [Enter] 鍵。

現在我們就可以看到 sneakers.txt 的內容了。

bash 命令行歷史文件中可以默認貯存 500 個命令。

竅門:通過在 shell 提示下鍵入 env 命令,我們會看到控制命令行歷史大小的環境變量。寫有 HISTFILESIZE=500 的那一行顯示了 bash 將會儲存的命令數量。

命令行歷史實際上被保存在一個文件中,它是我們的登錄目錄中叫做 .bash_history 的文件。我們可以用幾種方法來讀取:使用 vi 、 cat 、 less 、 more 、以及其它命令。

請留意這個文件可能會很長。要使用 more 命令來讀取它,在你的主目錄下鍵入:

more .bash_history

要向前移動一個屏幕,按 [Space] 鍵;要向後移動一個屏幕,按 [b] 鍵;要退出,按 [q] 鍵。

竅門:要不使用箭頭鍵或翻閱歷史文件而找到其中的命令,使用 grep 這個功能強大的搜索工具(請參閱 第 13.11.3 節 )。下面介紹了如何快速地尋找一個前面已用過的命令:假設你在搜尋一個類似於 cat sneak 什麼的命令。你用過了那個命令,你以為它可能還在你的歷史文件中。在 shell 提示下鍵入:

history grep sneak

另一個省時的工具又稱為命令自動補全。如果你鍵入了文件名、命令、或路徑名的一部分,然後按 [Tab] 鍵, bash 要麼會把文件或路徑名的剩余部分補全,要麼會給你一個響鈴(如果你的系統中啟用了聲效的話)。如果你得到的是響鈴,只需再按一次 [Tab] 鍵來獲取與你已鍵入的部分匹配的文件或路徑名的列表。

譬如,如果你忘記了命令 updatedb ,但是記得這個命令的一部分,你可以用 su 命令變為根用戶,然後在 shell 提示下鍵入 up ,連按兩次 [Tab] 鍵,你便會看到一個可用來補全命令的列表,包括 updatedb 和 uptime 。鍵入部分命令 upd ,然後再按 [Tab] 鍵,你的命令就會被自動補全。




Copyright © Linux教程網 All Rights Reserved