Ubuntu - 文件删除与回收站

GUI-删除文件[1]

  选中文件,可通过按delete键,右键删除或是拖曳到回收站进行删除。这些方式只是把文件放入回收站,而非永久删除。要想永久删除,需要进一步在回收站里删除。

  另外,可以用shift+delete直接永久删除选中的文件。

CMD-删除文件

  一般shell自带的rm命令会直接永久删除指定的文件。

  另外,可以用gvfs-trash或是trash-cli包里的trash命令将文件移入回收站[2];还可以用gvfs-ls trash://查看回收站中的文件;用nautilus trash://打开回收站;用gvfs-trash --empty清空回收站[3]

回收站

  每个用户的家目录下都可以有一个Trash目录~/.local/share/Trash。这个目录会在用户第一次非永久性删除文件时产生,其下有三个子目录[2]

  • files,被删除的文件会被放在这里
  • info,记录被删除文件原本的位置以及被删除的时间
  • expunged,当回收站被清空的时候,文件会被暂时移到这里。(这个子目录的具体功效我没有求证过,感觉不是特别重要。)

  通常非永久性删除的文件会被放到上述的回收站中。但是在可移动存储介质以及其它的硬盘分区的挂载点下会有.Trash和.Trash-uid(uid就是执行删除操作的用户UID)这一类回收站[2]。这两类回收站具体是什么关系还有待探索。

还原文件

  图形界面还原回收站文件的方法就不多说了,就是用文档管理器进入回收站右键还原选中的文件即可。

  shell自带的还原命令似乎没有,因为似乎命令行操作不提倡回收站的存在~。不过既然有需求,还是有人开发相应的功能,比如trash-cli包里的restore-trash可以用于还原操作[4]

小点点

  在知道了回收站的位置以后,可以用mv操作实现简易的删除和还原的操作,这个操作可能无法自动产生和利用info中的信息;用lscd查看和进入回收站;用文档管理器手动进入回收站,期间注意显示隐藏文件。

参考资料

  1. https://help.ubuntu.com/stable/ubuntu-help/files-delete.html.en
  2. https://askubuntu.com/questions/102099/where-is-the-trash-folder#
  3. https://askubuntu.com/questions/327943/how-to-open-trash-through-terminal
  4. https://askubuntu.com/questions/162180/is-there-a-restore-counterpart-to-gvfs-trash

你可能感兴趣的:(Ubuntu - 文件删除与回收站)