目錄
每個用戶的根目錄下都有四個這樣的 bash文件,他們是隱藏文件,需要使用-a參數才會顯示出來
.bash_history
該文件保存了當前用戶輸入過的歷史命令
history命令:讀取歷史命令文件中的目錄到歷史命令緩沖區和將歷史命令緩沖區中的目錄寫入命令文件。
歷史命令是被保存在內存中的,當退出或者登錄shell時,會自動保存或讀取。在內存中,歷史命令僅能夠存儲1000條歷史命令,該數量是由 /etc/profile 中的 HISTSIZE
變量
進行控制的。默認是不顯示命令的執行時間,命令的執行時間history 已經記錄,只是沒有顯示。
如想查詢某個用戶在系統上執行了什么命令,可以使用 root 用戶身份登錄系統,檢查Home目錄下的用戶主目錄下的“.bash_history”文件,該文件記錄了用戶所使用的命令和歷史信息。
history命令顯示的是 /~/.bash_history文件中的命令和當前shell下輸入的緩存中的命令。
也就是說,/~/.bash_history文件記錄的命令是上一次登錄及其之前的命令。我們這次登錄執行的命令並不會立即寫入/~/.bash_history文件中,而是存在緩存中。只有我們注銷后,該緩存中的命令才會寫入 /~/.bash_history 文件中。
- history 10 。顯現最近10條命令
- history -a:將當前終端緩存中的命令寫入 /~/.bash_history 中(追加)
- history -w:將當前終端緩存中的命令寫入 /~/.bash_history 中(覆蓋)
- history -c:清除當前終端緩存中的所有命令
- history -r : 將/~/.bash_history 文件中的命令讀入到緩存中
當在終端執行以下命令時,該終端就不會記錄歷史命令
export HISTFILE=/dev/null export HISTSIZE=0
.bash_logout
該文件的用途是用戶注銷時執行的命令,默認是沒有內容的
如果我們往該文件中寫入 history -c ,則在每次注銷時,會清除緩存中的命令。
.bash_profile
此文件為系統的每個用戶設置環境信息,當用戶第一次登錄時,該文件被執行。並從 /etc/profile.d 目錄的配置文件中搜集shell的設置。
我們也可以往該文件中增加新內容,環境變量啥的
.bashrc
此文件為每一個運行bash shell的用戶執行此文件。當bash shell被打開時,該文件被讀取。我們也可以往該文件中增加新內容,可以定義別名和函數
每次修改 .bashrc 后,使用 source ~/.bashrc(或者 . ~/.bashrc)就可以立刻加載修改后的設置,使之生效。
一般會在 .bash_profile 文件中顯式調用.bashrc。登陸linux啟動bash時首先會去讀取~/.bash_profile文件,這樣~/.bashrc也就得到執行了,你的個性化設置也就生效了。
關於環境變量的讀取順序:
用戶登錄 ->> 加載~/.bash_profile --> bash_profile中配置了首先是使~/.bashrc生效
參考文章:Linux| 用戶目錄下三個bash文件的作用(.bash_history,.bash_logout,.bash_profile,.bashrc)
/etc/profile /etc/bashrc ~/.bash_profile ~/.bashrc ~/.bash_logout 說明及區別