【Linux】Linux系統實現回收站功能

ringoo_ming發表於2019-05-14

其實之前去面試的時候別人提出來的問題,我沒回答上來,後來他又提醒了我一下我想到了曾經看到過一個命令:alias,這個命令可以讓你的命令重新命名,也就是說你輸入的cd可能不是cd,你輸入的rm也可以是別的命令,後來在網上找了一下覺得這個還挺靠譜的。


以下內容轉載於 

https://blog.csdn.net/u014057054/article/details/52126494


從事過伺服器維護的人都知道rm、rm -rf 的厲害,執行起來一點也不馬虎,有點六親不認的感覺。剛開始我也沒覺得rm的厲害,經過昨天rm掉我幾天的工作量,我才發現rm就是一把雙刃劍,幸好我的伺服器有打快照,讓我只損失了一天的工作量。

通過親身體會到了rm的厲害,我不得不在以後的Linux維護甚至是生產環境中不得不加上回收站了,希望各位童鞋也能和我一樣保持一種有回收站的習慣,切不可因為自己很仔細,抱著僥倖心理,“常在河邊走哪有不溼鞋”。

好了,開始我們的建立回收站之路吧。


開始

首先在自己家的目錄建立一個資料夾用來儲存刪除的檔案

mkdir -p ~/.Trash

修改.bashrc檔案

vi ~/.bashrc

在.bashrc檔案後面新增下面這些

alias rm=trash        
alias rl='ls ~/.Trash'  
alias ur=undelfile  
undelfile()  
{  
  mv -i ~/.Trash/$@ ./  
}  
trash()  
{  
  mv $@ ~/.Trash/  
}
cleartrash()  
{  
    read -p "Clear trash?[n]" confirm  
    [ $confirm == 'y' ] || [ $confirm == 'Y' ]  && /usr/bin/rm -rf ~/.Trash/*  
}

新增完畢後儲存,執行source命令生效

source ~/.bashrc

使用

你現在可以使用rm(刪除),ur(撤銷),rl(列出回收站),cleartrash(清空回收站)命令了。
#刪除一個資料夾,helloworld下面的檔案均被移到回收站中
$rm helloworld
#刪除一個檔案
$rm abc.txt
#撤銷abc.txt
$ur abc.txt
#撤銷helloworld資料夾
$ur helloworld
#列出回收站
$rl
#清空回收站
cleartrash

好了,重在實踐,這是一個很重要的配置,很重要很重要,希望大家不要像我被經歷過才來做這件事情,不然有時候真的是欲哭無淚

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31442725/viewspace-2644280/,如需轉載,請註明出處,否則將追究法律責任。

相關文章