liunx系統 自己製作一個回收站,rm -rf 命令執行後 文件難恢復問題

hello,大家好,大家看了上次的我寫的rm刪除文件,做實驗了麼?如果對liunx感興趣的,建議這個技能一定要掌握,我寫完以後,在百度上搜了一下相關的資料,看到一個更方便的辦法,這個辦法就是自己製作一個回收站,每次刪除文件後,他都會保存到回收站中去,如果反悔了,可以恢復回來,在這裏我特別感謝在百度上發帖的哥們,是他想出來的辦法。非常感謝他。

好了進入正題:

系統環境:CentOS release 4.4 (Final)

操作步驟我說的很詳細,不要嫌棄囉嗦,因爲我還照顧着對liunx不熟悉的人。

1 首先 我在/ 下創建了一個文本文件,起名:xcy 然後在xcy文件中添加內容爲 hello xcy 看好了哈,我查看了一下xcy文件裏面有內容,內容是hello xcy ,然後我就應該做最關鍵的地方了,修改/root/.bashrc 裏面創建我們的回收站。


212934530.jpg


2 這個部分是主要內容:原理我給大家介紹一下下:

1 上面用了個if判斷 -f 參數意思是 判斷/etc/bashrc 是不是一個文件 如果是 ;then ./etc/bashrc

2 下面是創建了一個文件夾 在~/.trash 這個位置= /root/.trash

3 修改別名 rm = trash 這裏的 trash 是引用的下面的自定義函數

4 提定義函數 trash(){ mv $@ ~/.trash } 這個自定義函數的意思就是 trash的內容就是 mv 文件 到 ~/.trash

然後把trash 修改別名爲rm ,也就是說 當你執行rm 命令的時候相當於執行trash 而 trash內容爲 mv 文件 到 /root/.bashrc 中,是不是很繞? 要是沒有聽明白,多看兩遍,正所謂縷一縷,哈哈

if [ -f /etc/bashrc ]; then

. /etc/bashrc


fi

mkdir -p ~/.trash

alias rm=trash

trash()

{

mv $@ ~/.trash/

}




212827756.jpg

3 我在/ 下查看了一下 有xcy 文件,然後我用rm 刪除了xcy 我在強調一下: 必須用 rm 刪除 因爲我們定義的是rm 別名了,rm -rf 能定義 我試驗了好幾次都不行,所以說 習慣用 rm -rf 命令的朋友 要該一該了, 當我用 rm 刪除文件以後 我進/root/.trash 目錄中 查看 我的xcy 文件就在裏面 內容也是刪除文件的, 說明 試驗成功了,回收站創建OK。很好玩吧。。


214938912.jpg


試驗總結: 這個辦法說實在很實用,但是有缺陷,缺點就是必須習慣用 rm 刪除文件 我試驗了多次 無法定義rm -rf 命令,大家可以嘗試一下如果有辦法,給我回帖啊一定要, 還有一個問題就是一個回收站相當於每次刪除,把文件都是mv 過來的,實際沒有刪除,這個一來回收站容量會一直增長,但是這個問題可以在計劃任務中添加一個 每個星期清空一次。

我這個人喜歡把知識分享給大家,希望能幫助到你們。。。





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章