• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    详解CentOS中使用rm命令将文件移到回收站的方法

    今天在终端下,看到我的用户目录下有个~的文件夹(maven生成),相要删除收回点空间,习惯性的用命令 rm -rf ~ ,一回车,猛然想起的时候已经来不及了,世界一下子清静了,想死的心都有了!

    没错,~指定的是当前用户的目录,我的用户名是liyd,相当于是执行了rm -rf /home/liyd,所有的文件都删除了。试了linux下的各种文件恢复方法,都不理想,ext4格式,找回来的比率太小了,还要在一大堆乱文件中查找需要的,唉!所幸没什么特别重要的文件,代码都git和svn提交了,损失还能接受。

    这次是~,下次要是误敲个其它的说不定会更杯具,经过这个教训,想着能不能有方法将rm命令删除的文件先放到回收站呢,留点误删后悔的余地,网上一查,还真有。

    看了下,基本上是偷换了概念,把rm命令转换成了mv命令,但是能够达到我想要的效果,只不过在习惯性的敲入-r 参数时会报出一个错误,因为mv命令没有-r参数嘛,下面是方法:

    原理是在用户主目录下创建一个隐藏文件夹~/.trash作为垃圾回收站。

    复制代码
    代码如下:

    mkdir -p ~/.trash
    vi ~/.bashrc

    然后把以下代码写入~/.bashrc后,保存一下。

    复制代码
    代码如下:

    alias rm='trash'
    alias rl='trashlist'
    alias ur='undelfile'
    #替换rm指令移动文件到~/.trash/中
    trash()
    {
    mv $@ ~/.trash/
    }
    #显示回收站中垃圾清单
    trashlist()
    {
    echo -e "33[32m==== Garbage Lists in ~/.trash/ ====33[0m"
    echo -e "\a33[33m----Usage------33[0m"
    echo -e "\a33[33m-1- Use 'cleartrash' to clear all garbages in ~/.trash!!!33[0m"
    echo -e "\a33[33m-2- Use 'ur' to mv the file in garbages to current dir!!!33[0m"
    ls -al ~/.trash
    }
    #找回回收站相应文件
    undelfile()
    {
    mv -i ~/.trash/$@ ./
    }
    #清空回收站
    cleartrash()
    {
    echo -ne "\a33[33m!!!Clear all garbages in ~/.trash, Sure?[y/n]33[0m"
    read confirm
    if [ $confirm == 'y' -o $confirm == 'Y' ] ;then
    /bin/rm -rf ~/.trash/*
    /bin/rm -rf ~/.trash/.* 2>/dev/null
    fi
    }

    在命令行下面刷新一下环境配置,即可生效:

    复制代码
    代码如下:

    source ~/.bashrc

    上一篇:CentOS修改主机名和网络信息的方法
    下一篇:centos7系统中挂盘硬盘报错该怎么办?
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    详解CentOS中使用rm命令将文件移到回收站的方法 详解,CentOS,中,使用,命令,