May*_*hux 7 permissions command-line trash
如何使用命令行从垃圾箱中恢复文件?
显然,您可以使用包restore-trash中的命令trash-cli,但这不会列出垃圾箱中的所有文件。
此外,具有 root 权限的文件被移至垃圾箱又如何呢?
仅显示 4 个文件。
如果您trash-restore从目录中运行,它只会显示从当前目录或其子目录中删除的已删除文件和目录
看起来,您正在trash-restore从主目录运行。因此,它仅显示从主目录或其子目录中删除的文件和目录。
例如/var,要恢复从另一个目录中删除的文件,您需要先cd进入该/var目录,然后trash-restore从那里运行。
或者,您可以像这样/指定系统根目录,以使其显示来自系统中任何位置的所有已删除文件和目录。trash-restoretrash-restore /
注意:
trash-restore该工具自 2019 年(而不是restore-trash之前)在最新软件包下调用trash-cli。
对于listing垃圾箱中的所有文件,
ls -l .local/share/Trash/files/
sudo ls -l /root/.local//share/Trash/files/
Run Code Online (Sandbox Code Playgroud)
应该在 Ubuntu 下执行(在我的例子中:MATE 16.04)。我在这里找到了那些路径。它还对 旁边的其他文件夹中的内容有进一步的解释files/。如果您想编写自己的恢复例程,这应该会有所帮助......
不确定您在做什么(编写测试来验证删除到垃圾箱?,...),但查看特定来源可能会trash npm module (js)提供进一步的见解。
更新:
实际上,找到已删除文件的正确位置可能会变得更加复杂,例如,当它不是从/home/someuser/...同一分区上的其他位置(例如/usr/share/...)或其他地方(安装的驱动器,包括可移动设备...)删除时
这应该是要阅读的规范: https ://specations.freedesktop.org/trash-spec/trashspec-1.0.html
上面提到的包trash依赖 xdg- trashdir来找到正确的路径。
每卷都有自己的垃圾。虽然nautilus或nemo显示所有已安装卷的垃圾箱组合,但restore-trash仅显示您当前所在卷中的文件,与 不同的是trash-list,它显示所有已安装卷的垃圾箱。