Linux 删除文件实现回收站功能

#编程技术 2019-12-31 10:40:00 | 全文 536 字,阅读约需 2 分钟 | 加载中... 次浏览

👋 相关阅读


从事过服务器维护的人都知道 rm、rm -rf 的厉害,执行起来一点也不马虎,有点六亲不认的感觉。刚开始我也没觉得 rm 的厉害,经过昨天 rm 掉我几天的工作量,我才发现 rm 就是一把双刃剑,幸好我的服务器有打快照,让我只损失了一天的工作量。

通过亲身体会到了 rm 的厉害,我不得不在以后的 Linux 维护甚至是生产环境中不得不加上回收站了,希望各位童鞋也能和我一样保持一种有回收站的习惯,切不可因为自己很仔细,抱着侥幸心理,“常在河边走哪有不湿鞋”。

好了,开始我们的创建回收站之路吧。

设置

1、首先在家目录创建一个文件夹用来保存删除的文件

mkdir -p ~/.Trash

2、修改 .bashrc 文件

vi ~/.bashrc

3、在 .bashrc 文件后面添加下面这些

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

4、添加完毕后保存,执行 source 命令生效

source ~/.bashrc

使用

你现在可以使用以下命令了。

#删除一个文件夹,helloworld下面的文件均被移到回收站中

$rm helloworld

#删除一个文件

$rm abc.txt

#撤销abc.txt

$ur abc.txt

#撤销helloworld文件夹

$ur helloworld

#列出回收站

$rl

#清空回收站

cleartrash

好了,重在实践,这是一个很重要的配置,很重要很重要,希望大家不要像我被经历过才来做这件事情,不然有时候真的是欲哭无泪。

·




×