如何通过终端删除垃圾桶(使用mv命令)?

我想知道如何删除文件和/或使用mv命令将其移至垃圾箱?

我知道垃圾所在的位置,然后我尝试使用此命令将其移至垃圾箱:

 mv somefile /home/username/.local/share/Trash 

这个命令工作正常,但是当我在启动器中打开垃圾时,它仍然显示为空。 我可以在原始位置撤消此删除的文件:

 mv /home/username/.local/share/Trash/somefile ~/ 

但如果这个位置/home/username/.local/share/Trash不适用于垃圾箱那么移动我的文件在哪里?

我知道rm将永久删除文件而不将其发送到垃圾文件夹,并且man rm没有用于删除文件到垃圾箱的标志。

有关垃圾箱目录的信息:

~/.local/share/Trash包含两个名为infofiles

  • ~/.local/share/Trash/files包含原始文件。
  • ~/.local/share/Trash/info包含文件(扩展名: .trashinfo ),其中包含有关文件路径和删除日期的信息。

因此,如果要使用mv命令,请执行以下命令:

 mv somefile ~/.local/share/Trash/files 

但是不建议使用上述方法将文件移动到垃圾箱。 (如此处评论)


您可以通过以下命令安装垃圾命令行,即trash-cli

 sudo apt-get install trash-cli 

这里有可用的垃圾命令:

 $ apropos trash gvfs-trash (1) - Move files or directories to the trash restore-trash (1) - Restore for Command line trash utility. trash (1) - Command line trash utility. trash-empty (1) - Empty for Command line trash utility. trash-list (1) - List trashed files. trash-put (1) - Command line trash utility. 

您可以通过以下命令将文件移动/放入垃圾箱:

  1. trash-put somefiles
  2. 或者gvfs-trash somefiles

按命令列出垃圾: trash-list
按命令还原文件: restore-trash
通过命令清空垃圾: trash-empty

也请访问问题。

您可以使用gvfs-trash而不是mv

 gvfs-trash somefile 

将它移动到〜/ .local / share / Trash后无法看到文件的原因是下面有一个额外的目录结构,即

  • ~/.local/share/Trash/files包含实际的trashed文件; 和
  • ~/.local/share/Trash/info包含元数据,例如原始位置

虽然你可以使用

 mv somefile ~/.local/share/Trash/files 

在这种情况下,一些文件在垃圾桶中可见,由于缺少info元数据,将无法使用nautilus / gvfs Restorefunction取消删除文件 – 您需要知道并手动将文件mv到其中原来的位置。 从这个意义上讲,只有gvfs-trash是与nautilus删除文件等效的命令行。