查詢曆史使用過的命令並使用(history)

來源:互聯網
上載者:User

一、什麼是history

在bash功能中,它能記憶使用過的命令,這個功能最大的好處就是可以查詢曾經做過的舉動!從而可以知道你的運行步驟,那麼就可以追蹤你曾下達過的命令,以作為除錯的工具!

二、History的儲存

那麼命令記錄在哪裡呢?在家目錄內的 .bash_history 裡! 不過,需要留意的是,~/.bash_history 記錄的是前一次登陸以前所運行過的命令, 而至於這一次登陸所啟動並執行命令都被緩衝在記憶體中,當你成功的登出系統後,該命令記憶才會記錄到 .bash_history 當中!

三、調用曆史命令

從上面我們已經知道了history的好處,那我們接下來學習一下它的用法吧!

history [n]

[root@instructor Desktop]#history [-c]

[root@instructor Desktop]#history [-raw] histfiles

選項與參數:

n :數字,意思是要列出最近的 n 條命令列表的意思!

-c :將目前的 shell 中的所有 history 內容全部消除

-a :將目前新增的 history 命令新增入 histfiles 中,若沒有加 histfiles ,

則預設寫入 ~/.bash_history

-r :將 histfiles 的內容讀到目前這個 shell 的 history 記憶中;

-w :將目前的 history 記憶內容寫入 histfiles 中!

範例一:列出目前記憶體內的所有 history 記憶

[root@instructor Desktop]#history

# 前面省略

1017 man bash

1018 ll

1019 history

1020 history

列出的資訊當中,共分兩欄,第一欄為該命令在這個 shell 當中的代碼, 另一個則是命令本身的內容!至於會顯示多少條命令記錄,則與 HISTSIZE 有關!

範例二:列出目前最近的 3 條資料

[root@instructor Desktop]#history 3

1019 history

1020 history

1021 history 3

範例三:立刻將目前的資料寫入 histfile 當中

[root@instructor Desktop]#history -w

# 在預設的情況下,會將曆史紀錄寫入 ~/.bash_history 當中!

[root@instructor Desktop]#echo $HISTSIZE

1000

四、曆史使用的竅門

1、!的使用

⑴!!重複前一個命令

⑵!字元 重複前一個以“字元”開頭的命令

⑶!num 按照history命令輸出中的序號來重複對應命令

⑷!?abc 重複前一個包含abc的命令

⑸!-n 重複n個命令之前的那個命令

2、按鍵組合

⑴使用up和down鍵來上下瀏覽之前執行的命令

⑵鍵入ctr+r來在命令曆史中搜尋命令

[root@instructor Desktop]#

(reverse-i-search)`':

(reverse-i-search)`h': cat /etc/shadow

按斷行符號鍵執行該命令

⑶要重新調用前一個命令中的參數

Esc + .(點擊Esc鍵,然後點擊.鍵)

注意:

History儲存在每個使用者自己的記錄中,位於使用者的家目錄中。使用者登入後,執行命令存放在記憶體中,只有登入後才能看到。

五、如何保證每次推出登入時情況history

在需要的使用者主目錄下,編輯~/.bash.logout添加一句history -c儲存退出就可以了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.