Archive

文章標籤 ‘.bash_logout’

.bash_logout 的使用

2013年5月21日 尚無評論

前幾天上課時剛好有個學員在詢問 .bash_logout 的使用問題,他希望每次登出時將 HISTORY 紀錄清空,預設操作十分簡單,將 history -c 指令語法添加到 $HOME/.bash_logout 即可,但學員反映怎樣測試都是會失敗。後來做了一個簡單的測試,確認一下 .bash_logout 是否有運作:

echo “Bye…..” > $HOME/.bash_logout

然後嘗試登出系統後,會出現:

user@Host2:~> exit

logout
Bye…..

所以證明 .bash_logout 有正常運作,那麼為什麼我們的 HISTORY 紀錄沒被清空呢 ? 其實並不是沒被清空,而是在 $HOME 路徑下還有一個 .bash_history 檔案記住相關 HISTORY 紀錄,若各位還有印象預設我們的環境變數中有指定一個 HISTSIZE 與 HISTFILESIZE 兩個,預設當我們下達 history -c 時會將暫存區內的紀錄清空,也就是清除 HISTSIZE 所記錄的資料筆數,但檔案內的紀錄仍舊存在,因此下次登入系統後仍舊會看到之前存放在 .bash_history 檔案內的相關指令操作紀錄。解決方式如下:

user@Host2:~> cat .bash_logout

history -c
cat /dev/null > $HOME/.bash_history

這樣便可以解決無法清空紀錄檔案的問題 ~