小萌博客 - 既是个人原创，又是汇聚分享 - immoe.org - rm -rf
type: channel
link: https://www.immoe.org/tag/rm--rf/
items: rm -rf 又一起惨案，该给Linux整一个回收站了！

rm -rf 又一起惨案，该给Linux整一个回收站了！
type: item
date: 2021-08-11T01:06:00+08:00
description: 全篇转载自 @如有乐享 ，由 小萌 进行编辑，本文仅作存档使用大家还记得这个表情吗？？没错！懂一点Linux 基础的都明白这个命令！ rm -rf 。 这个命令用不好的话，杀伤力奇高！著名的 rm -rf 惨案！ 2015年5月28日 携程疑似由于员工错误操作导致服务挂了2017年2月2日 GitLab 管理员误删生产数据库2017年4月5日 DigitalOcean 出现删除生产数据库的事故2018年4月24日 Kuriko宣布 因机房技术人员 rm -rf /* ，导致 host 上所有数据丢失了......就在前一段时间马甲大佬竟然也踩坑了！！！！线上环境发现某个目录下存在一些类似命名的.png 文件！于是乎想手动删掉。咔咔输入以下命令 😎rm -rf *>.png回车~😎😀过去0.5 秒😉过去 1秒😲 过去1.5秒😥 过去 2秒😱 我擦，赶紧 Ctrl + C赶紧看看目录情况 ls😭 被删了将近一半的文件我去！这怎么办？该目录文件基本上都是代码，备份还是6个月之前的，当初偷懒还直接在线上改过这个目录代码！！！！跑路吧！！！😂，说笑了，跑路不存在的，就算跑路也得修复这个问题呀！经过2天终于解决了。为了防止这种事情发生！尤其是线上服务器！是时候给他增加一个回收站功能了！开源项目网上介绍的方式很多，这个给大家推荐一个开源的项目！https://github.com/andreafrancia/trash-cli/部署安装简单方法要求：Python 3 (Python 2.7 也可以) pip (在 Debian 上用 apt-get install python-pip 来安装 pip)安装命令:pip install trash-cli源码安装为所有用户安装：git clone https://github.com/andreafrancia/trash-cli.git cd trash-cli sudo pip install .为当前用户安装：git clone https://github.com/andreafrancia/trash-cli.git cd trash-cli pip install .为当前用户安装后你可能需要把以下代码添加到 .bashrc：export PATH=~/.local/bin:"$PATH"卸载命令：pip uninstall trash-cli使用方法trash-put 把文件或目录移动到回收站 trash-empty 清空回收站 trash-list 列出回收站文件 trash-restore 恢复回收站文件 trash-rm 删除回收站文件移动文件到回收站：$ trash-put列出回收站文件：$ trash-list 2008-06-01 10:30:48 /home/andrea/bar 2008-06-02 21:50:41 /home/andrea/bar 2008-06-23 21:50:49 /home/andrea/foo搜索回收站文件：$ trash-list | grep foo 2007-08-30 12:36:00 /home/andrea/foo 2007-08-30 12:39:41 /home/andrea/foo恢复回收站文件：$ trash-restore 0 2007-08-30 12:36:00 /home/andrea/foo 1 2007-08-30 12:39:41 /home/andrea/bar 2 2007-08-30 12:39:41 /home/andrea/bar2 3 2007-08-30 12:39:41 /home/andrea/foo2 4 2007-08-30 12:39:41 /home/andrea/foo What file to restore [0..4]: 4 $ ls foo foo删除所有回收站文件：$ trash-empty删除回收站中 n 天前被回收的文件：$ trash-empty <days>示例：$ date Tue Feb 19 20:26:52 CET 2008 $ trash-list 2008-02-19 20:11:34 /home/einar/today 2008-02-18 20:11:34 /home/einar/yesterday 2008-02-10 20:11:34 /home/einar/last_week $ trash-empty 7 $ trash-list 2008-02-19 20:11:34 /home/einar/today 2008-02-18 20:11:34 /home/einar/yesterday $ trash-empty 1 $ tra…