linux自制垃圾筒 避免rm误删文件

linux自制垃圾筒 避免rm误删文件

linux默认是删除文件是直接永久删除,并没有想windows那样可以删除到垃圾桶,然后可以直接恢复。

linux自身是不带垃圾桶的,但是我们可以自己设计一个机制,当执行rm删除文件的时候,不是让它执行默认的行为-永久删除,而是将文件移动到一个文件夹,这个文件夹相当于一个垃圾桶;当我们发现删除是错误的文件,我们可以将这个文件还原回去。

另外还要一个命令可以永久删除文件,就像rm的默认行为一样,我们定义它为rmf,f代表forever。

要实现这套思路,最主要依靠linux的

alias 命令

编辑 ~/.bashrc

添加如下内容

# when call rm, move files into trash folder temporarily
alias rm=trash
alias rmf=/bin/rm


这样当调用rm命令的时候,就是trash这个命令,这个命令等下我们创建它,另外一个就是rmf是直接调用内置的rm命令,注意不要写成

alias rmf=rm

这样rmf就变成了trash,这不是我们想要的。

下面我们创建trash命令,并放在/usr/bin目录下面

sudo vim /usr/bin/trash

其内容如下:

#!/bin/bash
mkdir -p ~/trash
mv $1 ~/trash

第一条是如果在 ~/trash不存在的情况下,创建它,否则什么都不做。
好了,现在试试吧。

 

版权所有,禁止转载. 如需转载,请先征得博主的同意,并且表明文章出处,否则按侵权处理.

    分享到:

Leave a Reply

Your email address will not be published. Required fields are marked *