给rm别名以做其他事情有很大的不利之处吗?


8

最近,我被rm一些我本不该拥有的东西咬到了-例如,忘记了ulink符号链接,而不是rm它们。

我正在考虑编写一个小的bash脚本,将目标仅移动到~/.local/share/Trash,因为我还没有掌握恢复文件的功能(似乎涉及很多Linux黑客,我很快不会实现)。

我能想到的唯一问题是:

  • 需要rm文件的脚本/应用程序(真的有问题吗?我也可以习惯于调用rm!
  • 文件已移至“已删除邮件”(Trash)而文件已具有相同名称(不确定Ubuntu当前如何解决该问题,可以通过附加md5(name + time())名称来解决)。

当然,真正的答案是备份,或者只是学习不要做一些愚蠢的事情,但是我仍然想要一个合适的解决方案。

这是一个非常可怕的主意还是可以做的事情?


这不是一个糟糕的主意,尽管正如您所指出的,备份更好。也许最坏的结果是您将依赖于可撤消的删除,当您不在“受保护”的环境中时,该删除可能会咬住您。在这里对Ubuntu备份进行了调查:ubuntu.stackexchange.com/questions/2596/…–
msw

Answers:


14

“显着的缺点”是,您会习惯于不习惯rm使用烦人的工具,而已习惯使用这种工具。这意味着,如果您(一生中很可能)使用另一台未安装此“ soft-rm”的计算机,那么您可能会rm更粗心地使用,而忘记了您的安全网不存在。


2
这就是为什么你应该命名此命令别的东西,如deletedel例如。如果未安装该命令,将导致“找不到命令”错误,因此不会造成任何危害。
Lars Haugseth

8

要安装trash-cli,只需输入控制台:

sudo apt-get install trash-cli

你可以别名rmtrash-put,如果你喜欢,他们有一个兼容的语法。它与gnome垃圾桶配合使用非常好,您可以使用nautilus或垃圾桶小程序恢复从命令行中删除的文件,并使用垃圾桶列表从命令行恢复从鹦鹉螺中删除的文件。

它将处理不同的文件名,并记住文件的原始位置。


您也可以尝试gvfs-trash,如ændrük在注释中所述。但是,相对于gvfs-trash

1)它与gnome或gvfs无关。它甚至可以在没有gnome的服务器上或在其他桌面环境中工作。它实现了gnome兼容性,因为它使用了freedesktop垃圾规范作为gnome。

2)它尝试使用与rm相同的格式,因此可以为其别名。脚本第一次尝试不会失败trash-put -Rf dir

gvfs-trash的主要优点是默认情况下已将其安装在Ubuntu中。


有什么理由trash-put代替使用gvfs-trash吗?
ændrük

首先也是最重要的一点:我不知道gvfs-trash。第二:它不依赖于gnome,它是兼容的,因为它使用了freedestop垃圾回收标准。第三:它试图保持与rm的选项兼容性,因此可以以最小的麻烦将它作为别名。这就是问题所在。
哈维尔·里维拉

我在回答中添加了非幽默的原因,因为我认为它们很重要。同样,对gvfs-trash的引用也很重要,因为在大多数情况下它将是一个更好的解决方案。
哈维尔·里维拉

第一段“请勿尝试安装...”似乎与之前的代码块相矛盾。我并不是想成为语法迷,只是不清楚。
MSW 2010年

我不是英语为母语的人,我的语法也不是很出色,所以我希望能为您提供更好的帮助。如果您有足够的代表,请随时编辑帖子,或者在这里提出建议。我要说的是您必须使用easy_install而不是apt-get进行安装。
哈维尔·里维拉
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.