使用命令行恢复移至垃圾箱的文件

使用命令行恢复移至垃圾箱的文件

如何使用命令行从垃圾箱中恢复文件?

显然,您可以使用包restore-trash中的命令trash-cli,但这不会列出垃圾箱内的所有文件。

此外,如果文件以 root 权限移动到垃圾箱怎么办?

这些是垃圾箱中的文件: 在此处输入图片描述

现在使用restore-trash命令: 在此处输入图片描述

仅显示 4 个文件。

答案1

如果你trash-restore从目录中运行,它将仅有的显示被丢弃的文件和目录当前目录或其子目录


看起来你正在逃避trash-restore你的主目录。因此,它仅显示从您的主目录或其子目录


例如,要恢复从另一个目录删除的文件/var,您需要cd先到该/var目录,然后trash-restore从那里运行。


或者/,您可以像trash-restore这样指定系统根目录trash-restore /以使其显示全部删除的文件和目录起源从系统中的任何位置


注意:

trash-restore该工具自 2019 年起(而不是restore-trash以前)在最新软件包下被调用trash-cli

答案2

对于listing垃圾箱中的所有文件,

ls -l .local/share/Trash/files/

sudo ls -l /root/.local//share/Trash/files/

应该在 Ubuntu 下进行(我的情况是:MATE 16.04)。我在这里找到这些路径。它还对旁边的其他文件夹中的内容进行了进一步解释files/。如果您想编写自己的恢复例程,这应该会有所帮助...

不确定你在做什么(编写测试来验证删除到垃圾箱?......)但正在查看具体来源trash npm module (js)可能会提供进一步的见解。


更新: 实际上,找到已删除文件的正确位置可能会变得更加复杂,例如,当它不是从中删除,/home/someuser/...而是从同一分区(比如说/usr/share/...)或其他地方(已安装的驱动器,包括可移动驱动器......)中删除时

这应该是这样的规范: https://specifications.freedesktop.org/trash-spec/trashspec-1.0.html

上面提到的软件包trash依赖于 xdg-垃圾目录找到正确的道路。

答案3

每个卷都有自己的垃圾箱。nautilusnemo显示所有已安装卷的垃圾箱,但restore-trash仅显示您当前所在卷的文件,而 则不同trash-list, 会显示所有已安装卷的垃圾箱。

相关内容