基于Linux(Centos 7)回收站机制

前言:

建立回收站机制的前提为使用root账户,且rm命令没有被删除。如果需要在生产环境中使用请根据个人的服务器使用权限决定。

一.首先安装vim编辑器。(不使用vim编辑器,shell语法出问题很难查清)

yum -y install vim

二.创建回收站目录

mkdir -p /data/.trash

其中trash前面的“.”表示隐藏目录如需查看使用ls -a 显示隐藏文件。是否隐藏根据使用场景考虑。

三.编辑/root/.bashrc文件

vim /root/.bashrc

具体具体代码如下:

# .bashrc
# User specific aliases and functions
alias rm=yzy
alias qk=qingkong
alias lt='ls /data/.trash'
alias hy=huanyuan
alias cp='cp -i'
alias mv='mv -i'

huanyuan(){
        mv -i /data/.trash/$@ ./
}
yzy(){
#为删除的文件添加时间戳,防止相同名称的文件在回收站中被覆盖,而导致无法还原。
        delete_date=`date +%Y%m%d%H%M%S`
        for yy in "$@"
        do
                mv  $yy /data/.trash/$yy-${delete_date}
                echo $yy"文件已被删除"
#需要判断文件类型时使用以下代码,不需要时使用使用上方代码。
#       if [ -f $yy ];then
#               mv $yy /data/.trash/$yy-${delete_date}
#       elif [ -d $yy ];then
#               mv $yy /data/.trash/$yy-${delete_date}
#       fi
        done
}
qingkong(){
        read -p "确定清空回收站?[输入“y”或“Y”进行确认。&&输入“n”取消。]" confirm

        case $confirm in

        Y | y)

         /bin/rm -rf /data/.trash/*;;

        N | n)

        echo "ok,good bye";;

        *)
         echo "error choice";;

        esac
}
# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi
                                     

四.使修改的.bashrc文件生效

source /root/.bashrc

五.命令的使用

1.rm xx(xx为删除文件或目录名称)

2.lt (查看回收站中的文件)

 3.hy xx(xx为回收站中文件或目录名称)

 4.qk(清空回收站,此时代表真正的rm。请谨慎使用

后记:

本篇文章主要参考以下文章编写:

Centos7做回收站功能-防止误删除_centos7 回收站_小小傻瓜牙的博客-CSDN博客

centos7 为rm -rf 删除文件创建一个回收站_centos 7 回收站设置 博客园_Zachary01的博客-CSDN博客
【Linux】解决shell脚本中syntax error:unexpected end of file问题-CSDN博客
 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值