最近我多次做了rm
不该做的事情,例如,忘记了ulink
符号链接,而不是rm
它们。
我正在考虑编写一个小型 bash 脚本来简单地将目标移动到~/.local/share/Trash
,因为我还没有掌握恢复文件的方法(似乎涉及很多 Linux 黑客技术,我不会很快实现)。
我能想到的唯一问题是:
- 需要
rm
文件的脚本/应用程序(真的是个问题吗?我也可以习惯打电话rm!
之类的), - 文件被移动到废纸篓,而那里已经有相同的名称的文件(不确定 Ubuntu 现在如何解决这个问题,可以通过
md5(name + time())
在名称后附加内容来解决。
当然,真正的答案是支持或只是学会不做傻事,但无论如何我还是希望有一个包容的解决方案。
这是一个非常糟糕的想法吗?或者这是可以做的事情吗?
答案1
“显著的缺点”是,你会习惯于rm
不使用它这种大而讨厌、需要极其小心使用的工具。这意味着如果你曾经(在你的一生中,很可能)使用过另一台没有安装此“软 rm”的计算机,那么你可能会rm
更粗心地使用它,忘记你的安全网已经不存在了。
答案2
安装trash-cli
,只需在控制台中输入:
sudo apt-get install trash-cli
如果您愿意,您可以将其别名rm
为trash-put
,它们具有兼容的语法。它与 gnome trash 配合得很好,您可以使用 nautilus 或 trash applet 从命令行恢复已删除的文件,并使用 trash-list 从命令行恢复从 nautilus 删除的文件。
它将处理不同的文件名并记住文件的原始位置。
您也可以尝试gvfs-trash
,正如 ændrük 在评论中指出的那样。但 trash-put 比 有几个优势gvfs-trash
:
1) 它不依赖于 gnome 或 gvfs。它甚至可以在没有 gnome 的服务器或其他桌面环境中工作。它实现了 gnome 兼容性,因为它使用 freedesktop 垃圾规范,就像 gnome 一样。
2) 它尝试使用与 rm 相同的格式,因此可以将其别名化。脚本第一次尝试时不会失败trash-put -Rf dir
gvfs-trash 的主要优点是它在 Ubuntu 中默认安装。