替换rm命令防止误删除

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了替换rm命令防止误删除相关的知识,希望对你有一定的参考价值。

  1. 放置误删除脚本:

    /usr/bin/remove.sh

  2. #!/bin/bash
    PATH_CNT="$#"
    TRASH_DIR="$HOME/.trash"
    mkdir -p $TRASH_DIR
    
    menu(){
    	echo
    	echo -e "\t\t\tSys Options Menu\n"
    	echo -e "\t1.Delete OK!"
    	echo -e "\t2.Don‘t delete, into the recycle bin: $HOME/.trash"
    	echo -e "\t0.Exit menu\n\n"
    	echo -en "\t\tEnter Options:  "
    	read -n 1 option
    }
    mvfunc(){
    	for i in [email protected]
    	do
    		STAMP=`date +%Y%m%d%H%M%s`
    		fileName=`basename $i`
    		mv -f $i $TRASH_DIR/$fileName.$STAMP 
    		echo 
    	done
    }
    
    rmfunc(){
    	for i in [email protected]
    	do
    		STAMP=`date +%Y%m%d%H%M%s`
    		fileName=`basename $i`
    		[ -n $i ] &&  rm -rf $i $TRASH_DIR/$fileName.$STAMP 
    		echo 
    	done
    }
    
    while :
    do
    menu
    case $option in
    	"1")
    		rmfunc [email protected] && exit 0
    		;;
    	"2")
    		mvfunc [email protected] && exit 0 
    		;;
    	"0")
    		break
    		;;
    	*)
    		echo "Sorry,wrong selection"
    		;;
    esac
    done

3. 修改~/.bash_profile(个人偏好文件),如果想让任何用户都修改,在/etc/profile.d/添加全局配置文件:

如/etc/profile.d/remove.sh

  alias rm=‘sh /usr/bin/remove.sh‘

以后用户登录或者产生新进程的时候就会启动了


4. 定期清理垃圾箱

如利用crontab机制,如 0 0 * * * rm -rf /home/username/.trash/*

技术分享

5. 执行结果

技术分享

test.py.2016062117521466502755


本文出自 “Zcy.gy” 博客,请务必保留此出处http://1064187464.blog.51cto.com/9108437/1791469

以上是关于替换rm命令防止误删除的主要内容,如果未能解决你的问题,请参考以下文章

linux下修改rm命令防止误删除

Centos 7.5安装safe-rm,防止rm -rf /命令误删除文件

Ubuntu16.04安装safe-rm,防止rm -rf /命令误删除文件

利用alisa别名rm防止文件误删除

如何优雅地使用 rm 防止误删除?

Linux使用别名alias将rm命令替换为mv避免误删除