在不斷地輸入相同的指令時,不久將會覺得麻煩。 只要一個輸入錯誤可能會毀掉一系列的指令。
一個解決的方法是使用命令列的歷史。 藉由使用 『
再以 sneakers.txt 檔案(在 菴 13.9.1 節 所建立的) 來試著操作這個功能。 然而,第一次在 shell 提示符號下輸入:
cat sneakrs.txt |
當然沒有發生任何事,因為並沒有 sneakrs.txt 這個檔案。 不用擔心,我們只要使用向上方向鍵來找回這個指令,然後使用向左方向鍵來找到我們遺漏掉 "e" 的地方。 將這個字母輸入,再按下
現在我們就可看到 sneakers.txt 的內容了。
預設可以儲存 500 個指令在 bash 命令列的歷史檔案。
建議 | |
---|---|
在 shell 提示符號下輸入 env 指令,我們可以看到控制命令列歷史大小的環境變數。 顯示 HISTFILESIZE=500 的這一行表示 bash 將儲存的指令數量。 |
命令列歷史實際上是儲存在一個檔案中,就在我們登入目錄中的 .bash_history 檔案。 我們可以使用許多種方法來讀取它: 使用 vi, cat, less 以及 more 等等。
請注意這個檔案可能很長。 如要使用 more 指令來讀取它,請在您的家目錄輸入:
more .bash_history |
可按下
建議 | ||
---|---|---|
如不想不斷的按方向鍵或逐頁搜尋這個歷史檔案來找出其中的一個指令, 可以使用 grep 指令(一個強力的搜尋工具,請看 菴 13.11.3 節)。 在此向您示範要如何快速的找出之前使用過的指令: 譬如您想搜尋一個類似 cat sneak-something 的指令。 您已經使用過這個指令,而您認為它應該在您的歷史檔案中。 在 shell 提示符號下輸入:
|
另一個節省時間的工具就是所謂的自動完成指令。 假如您輸入一個檔案、指令或路徑名稱的一部分,然後按下
例如,假如您忘記 updatedb 指令,但仍記得這個指令的一部分,您可以 su 為 root,然後在 shell 提示符號下輸入 up,再按下