日期:2014-05-16  浏览次数:20789 次

通过替换linux rm命令防止误删除

1. 在/home/username/ 目录下新建一个目录,命名为:.trash

2.. 在/home/username/tools/目录下,新建一个shell文件,命名为: remove.sh

PARA_CNT=$#
TRASH_DIR="/home/username/.trash"

for i in $*; do
    STAMP=`date +%s`
    fileName=`basename $i`
    mv $i $TRASH_DIR/$fileName.$STAMP
done


3. 修改~/.bashrc, 增加一行

alias rm="sh /home/username/tools/remove.sh"

用我们自建的remove.sh替代rm命令

 

4. 设置crontab,定期清空垃圾箱,如:

0 0 * * * rm -rf /home/username/.trash/*

每天0点清空垃圾箱

 

5. source ~/.bashrc 使替换立即生效

经过上面的步骤后,执行rm删除的文件,会被放入垃圾箱。如果误删除,可以从中恢复。