1. 程式人生 > >linux下修改rm命令防止誤刪除

linux下修改rm命令防止誤刪除

寫上 linu rm -rf 目錄權限 執行權限 一個 remove 但是 bsp

前言:相信很多朋友都遇到過在linux下用rm命令誤刪除文件的時候,此刻的心中仿佛有無數的羊駝在奔騰。那麽怎麽防止這種情況發生呢?當然是有方法的,我們可以寫一個shell腳本,改變一下rm命令的作用。

第一步:

先在home目錄下創建一個叫username名字的目錄(當然名字可以自定義),具體命令為:sudo mkdir username(自定義的名字)

這時候記得要用命令:sudo chmod 777 username(自定義的名字)來改變一下你的目錄權限,因為在home目錄下剛創建的目錄是沒有執行權限的。

第二步:

進到username目錄下,命令為:cd username ,接著在username 目錄下創建兩個目錄分別為trash和tools這兩個名字都可以自定義的,當然也要改一下權限,方法和上面的一樣。


第三步:

進到tools目錄下,方法在第二步已經講過了,在裏面創建一個shell文件叫remove.sh(名字也可自定義,但是後綴必須是.sh),具體命令為:touch remove.sh,這時shell文件一般都是有執行權了的,沒有的話再用命令:sudo chmod 777 remove.sh改一下權限。

第四步:

接著在剛才創建好的shell文件remove.sh中寫上代碼:

PARA_CNT=$#
TRASH_DIR="/home/username/trash"    //如果你是自定義目錄名的話,這裏一定要改成你自定義的目錄名
for i in $*; do
    STAMP=$i
    mv $i $TRASH_DIR
/.$STRMP done

第五步:

接著用命令:vi ~/.bashrc打開~/.bashrc文件到最後加上這句代碼:alias rm="/home/username/tools/remove.sh",如果你的目錄名字是自定義的話這裏一定要改成你自己的名字,接著保存退出。

第六步:

用命令:source ~/.bashrc重啟一下就好了。

這時候就把rm命令改成了mv一樣的作用,你在使用rm命令的時候就會把你刪除的文件移動到trash目錄下了,如果你不小心把文件誤刪了就可以到trash目錄下找回來了。

當然如果你要徹底刪除這些文件的話可以直接用命令:sudo rm [文件名/目錄名],這樣這些文件就不會被移動到trash目錄下了。

如果你想清理trash目錄下的文件很簡單,進到trash目錄後,直接執行命令:sudo rm *,這樣就可以清空trash目錄下所有的文件了。

如果你實在是很懶的話,那還是讓它自動定時清空trash目錄中的東西吧,具體操作如下:

先用命令:cd /etc/ 進到etc目錄下,你會看到裏面有個叫crontab的文件,先用命令:sudo chmod 777 crontab 改一下crontab文件的權限先,不然等下修改不了裏面的代碼。接著打開crontab文件,命令為:vi crontab 直接在最後面加上這句代碼:

 0 0  * * *       rm -rf/home/username/trash/*   //如果你的名字跟我的不一樣,那就改成你自己的

這句話的意思是每天的0時0分清空trash目錄。

接著重復一下第六步就大功告成了。這時候就會每天幫你自動清空trash目錄了,當然你也可以手動清空,上面已經講過了。

linux下修改rm命令防止誤刪除