垃圾:不能删除常规文件

Hat*_*sut 3 permissions command-line rm

我试图避免使用,rm所以我不会永久删除任何内容。我正在使用实用函数trash,但它一直告诉我trash: cannot trash regular file。为什么我无法删除这些文件?例如,它们是我在程序中创建的 csv 文件。

$ ls -l | grep filename
-rw-rw-r--  1 username usergroup 298025 Sep 23 02:33 filename.csv
Run Code Online (Sandbox Code Playgroud)

使用该-v标志运行它会给出:

trash: found unusable .Trash dir (should be a dir): /.Trash
trash: Failed to trash filename.csv in /.Trash/1005, because :[Errno 13] Permission denied: '/.Trash'
trash: Failed to trash filename.csv in /.Trash-1005, because :[Errno 13] Permission denied: '/.Trash-1005'
trash: cannot trash regular file `filename.csv'
Run Code Online (Sandbox Code Playgroud)

我还注意到了另一个特点。我正在尝试trash从不属于我的目录中获取该文件。但如果我将mv文件发送到~,我就可以trash成功地在那里。

Mic*_*ole 7

GNOMEish 文件管理器需要一个地方来放置废弃的文件。

  • “home”分区上已删除的文件转到: /home/$USER/.local/share/Trash
  • 由于性能和空间原因,其他分区上已删除的文件无法复制到“主目录”。

所以它尝试将它们放入/[partition mount]/.Trash-$UID文件夹中。如果没有对该文件夹的读写访问权限,则不会产生垃圾。

以需要垃圾箱的用户身份在分区根目录中运行此 bash。

sudo mkdir .Trash-$UID && sudo chown $USER:$USER .Trash-$UID
Run Code Online (Sandbox Code Playgroud)

您可以删除此文件夹并保护分区/以禁用该功能。

sudo rm -rf /[partition mount]/.Trash-xxxx
sodo chown root:root /[partition mount]/
Run Code Online (Sandbox Code Playgroud)