美文网首页
一个防止服务器误删文件的脚本

一个防止服务器误删文件的脚本

作者: w也不知道 | 来源:发表于2017-05-01 20:43 被阅读0次

  脚本功能:把所有要 rm 掉的文件全部移动到 /tmp/$HOME 目录下;可以设置定时任务定期清理 /tmp/$HOME 目录
  具体用法:删掉原有的 rmdir 命令, 把原来的 rm 命令改名为 rmdir;接着在新的 rm 命令中写入脚本中的内容,赋予新的 rm 命令执行权限

sudo mv /bin/rmdir /etc
sudo mv /bin/rm /bin/rmdir
sudo mv rm /bin/
sudo chmod +x /bin/rm
#!/bin/bash
#Filename: rm

all=$*
ctrl=1
[ ! -d /tmp/$HOME ] && mkdir -p /tmp/$HOME
function mv_file()
{
    for file in $all;do
        # 去除参数 $1
        if [ $ctrl != 1 ];then
            mv $file /tmp/$HOME/ &>/dev/null
            # 判断移动文件是否成功
            [ $? != 0 ] && echo -e "\033[32m$file \033[0mis not exists or Permission denied"
        fi
        ctrl=$(( ctrl + 1 ))
    done
}

case $1 in
    -r)
        mv_file;;
    -f)
        mv_file;;
    -rf)
        mv_file;;
    -fr)
        mv_file;;
    *)
        echo "Usage: rm [-r|-f|-rf|-fr]";;
esac
命令执行效果

相关文章

网友评论

      本文标题:一个防止服务器误删文件的脚本

      本文链接:https://www.haomeiwen.com/subject/eodqtxtx.html