Linux回收站

--------------我是分割线--------------

xx组长说让我搞个回收站脚本,写出来给他演示之后,他才跟我说清楚他的需求。

他是想FTP服务器在探测到删除文件或者目录的动作时,默默的做一个类似Linux的mv动作,保存到另一个目录,实现误删除后的快速恢复。

写都写了,咱就发出来了,帮助到大家,也算是不亏了笔者的忙活。

--------------我是分割线--------------


Linux的回收站,其实就是一个脚本,你可以自己定义,废话不多说,上脚本:

[ ! -d ~/.trash/ ] && mkdir ~/.trash
alias rm="trash $@"
alias rl=‘ls ~/.trash‘
alias ur="undelfile $@"

undelfile(){
    [ $# -eq 0 ] && { echo "You chosed no file or dir to recovery!" ;return 0; }
    for i in $@;do
        [ "x$i" == ‘x-rf‘ -o "x$i" == ‘x-r‘ ] && continue
        #[ $i=‘-f‘ ] && continue
        /bin/mv ~/.trash/$i ./
    done
}

trash(){
    mv $@ ~/.trash/
}

cleartrash(){
    read -p "be sure to clean trash dir?[y|n]" confirm
    if [ $confirm == ‘y‘ -o $confirm == ‘Y‘ ];then
        /bin/rm -rf ~/.trash/* 
    elif [ $confirm == ‘n‘ -o $confirm == ‘N‘ ];then
        return 0
    else
        echo "Error input!"
    fi
}

我加的功能不是很多,需要提示帮助信息的童鞋可以再改改

如果服务器需要创建多个用户,并且想给每个用户都有这个功能的时候,可以直接去改模板文件/etc/skel/.bashrc

系统在每次创建普通用户的时候,都会去从这里拷贝文件。

本文出自 “常有” 博客,请务必保留此出处http://chyou.blog.51cto.com/5503396/1627757

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。