Repolode
MilesCranmer

MilesCranmer/rip2

一个基于 Rust 的更安全的 rm 替代品,删除的文件会移入可恢复的“墓地”而非直接抹除。

Star
679
Fork
15
未关闭 Issue
11
最近提交
18天前

这是什么?

rip2 是一个用于删除文件和目录的命令行工具。它不会直接永久删除,而是把被删内容移入“墓地”目录(通常为 /tmp/graveyard-$USER),并保留其绝对路径,方便随时恢复。若多个被删项目路径相同,后者会以编号备份的形式保存,不会覆盖已有数据。

使用方式与 rm 相比更简单,无需 -rf 即可删除文件和目录。执行 rip -u 可撤销上一次删除;-i 会在移入前显示目标的大小和内容预览;-s 列出当前目录下被删除的项目;-d 则永久清空墓地。墓地位置可通过命令行参数、RIP_GRAVEYARD 环境变量或 XDG_DATA_HOME 进行修改。

rip2 是 nivekuil/rip 的维护分支,支持 Linux、macOS 和 Windows,可通过 Homebrew、Cargo、Nix 或预编译二进制安装。它不实现 xdg-trash 规范。

核心功能

  • 01将被删文件移入按绝对路径组织的墓地目录,便于恢复。
  • 02通过 rip -u 撤销最近一次删除或恢复指定文件。
  • 03同名冲突时以编号备份保存,不覆盖已有数据。
  • 04使用 -i 在删除前查看目标的大小和内容预览。
  • 05使用 -s 列出当前目录下被删除的文件。
  • 06基于 clap 生成 shell 自动补全。

适用场景

  • 在日常命令行操作中替代 rm,避免误删后无法找回。
  • 从交互或脚本操作中误删的文件进行恢复。
  • 清理目录的同时保留可恢复的删除记录。

快速上手

  1. 1

    使用 Homebrew 安装

    brew install rip2
  2. 2

    删除文件和目录

    rip file.txt dir1 dir2
  3. 3

    撤销上一次删除

    rip -u

使用前须知

  • 默认情况下文件会被移到 /tmp 中的墓地目录,如果该目录位于内存文件系统上,删除大文件可能耗尽内存。
  • 它不实现 xdg-trash 规范,因此无法与桌面回收站集成。

标签

常见问题

rip2 是什么?
一个基于 Rust 的更安全的 rm 替代品,删除的文件会移入可恢复的“墓地”而非直接抹除。 rip2 是一个用于删除文件和目录的命令行工具。它不会直接永久删除,而是把被删内容移入“墓地”目录(通常为 /tmp/graveyard-$USER),并保留其绝对路径,方便随时恢复。若多个被删项目路径相同,后者会以编号备份的形式保存,不会覆盖已有数据。
rip2 可以免费使用吗?用的什么许可证?
rip2 以 GPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
rip2 还在维护吗?
活跃维护中。rip2 最近一次提交是在 2026年10月4日。
rip2 适合用来做什么?
在日常命令行操作中替代 rm,避免误删后无法找回。 从交互或脚本操作中误删的文件进行恢复。 清理目录的同时保留可恢复的删除记录。
rip2 怎么安装和运行?
使用 Homebrew 安装: brew install rip2 删除文件和目录: rip file.txt dir1 dir2 撤销上一次删除: rip -u
在哪里获取 rip2?
源代码和安装说明在 GitHub 上:https://github.com/MilesCranmer/rip2

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目