作为Linux用户,您可能需要不时从系统中删除文件。我们在删除文件时往往会保持谨慎,特别是在永久删除文件时,因为我们不想永远错误地丢失有用的信息。不幸的是,有些情况下我们会错误地删除某些内容而无法恢复它。或者,我们打算只删除文件夹中的文件,但也错误地从子文件夹中删除文件。在图形界面中,事物几乎可见,并且还有用于恢复已删除文件的Trashcan实用程序。但是,文件删除尤其是Linux命令行中的敏感操作。
在本文中,我们将介绍通过Ubuntu命令行安全删除文件的几种方法,并安装一个Trash CLI,以便在我们错误地删除文件时可以恢复文件。
我们在Ubuntu 18.04 LTS系统上运行了本文中提到的命令和过程。
由于我们使用的是Ubuntu命令行应用程序终端,您可以通过系统Dash或Ctrl + Alt + T快捷方式打开它。
rm命令 - 残酷的删除方式
Linux中的rm命令用于从系统中删除文件和文件夹。虽然它是用于此目的的最广泛使用的命令,但它不是这样做的最佳方式。这是因为当您通过此命令删除文件和文件夹时,它们很难恢复。让我们来看看我们通常遵循的语法,以便删除文件和文件夹:
使用rm命令删除文件
以下命令将从系统中永久删除指定的文件:
$ rm [/file-location/file-name]
实例:
$ rm /home/linuxidc/linuxidc.com.txt
删除所有文件夹和子文件夹中的文件
以下命令将从系统中永久删除指定的文件夹,包括其文件及其子文件夹中的所有文件:
$ rm -R [/folder-location]
实例:
$ rm -R /home/linuxidc/linuxidc.com
通过rm命令安全删除
上面提到的命令几乎永久地从系统中删除文件; 所以什么都不见了。 在删除任何文件之前,系统甚至不会提示您进行确认。 在从系统中删除文件之前,如何使用要求您确认的开关?
首先获取确认提示,删除文件
使用-i开关时,您将在系统删除文件之前收到确认提示。
$ rm -i [/file-location/file-name]
实例:
$ rm -i /home/linuxidc/linuxidc.com.txt
rm:是否删除普通文件 '/home/linuxidc/linuxidc.com.txt'? Y
如果输入Y作为确认提示的答案,系统将仅删除文件。
删除3个以上的文件时收到确认提示
当我们想要一次删除多个文件时,每次删除每个文件之前每次询问都会有点麻烦。如果您选择一次删除3个以上的文件,或者在文件夹和子文件夹中以递归方式删除,则-I开关仅向您提供确认提示。
$ rm -I [/ file-location / file-name]
命令行Trashcan - 可恢复的删除方式
上面提到的-i和-I开关可能是一种删除文件的谨慎方法,但最安全的方法是有一个恢复文件的选项,即使你已删除它们。 “垃圾箱”命令行界面提供了垃圾箱或回收站在UI中的功能。
安装Trash CLI
在终端中以root用户身份运行以下命令,因为只有授权用户才能在Ubuntu上安装软件:
$ sudo apt-get install trash-cli
您可能需要输入sudo的密码。安装完成后,您可以验证安装并通过以下命令检查垃圾实用程序的版本号:
$ trash --version
trash命令可以多种方式使用。您可以通过以下命令检查垃圾帮助,通过各种开关查看可以执行的操作:
$ trash --help
使用Trash CLI
您可以通过“Trash CLI”执行以下操作:
通过将文件发送到垃圾箱来删除文件
使用以下命令将文件发送到垃圾箱:
$ trash [/file-location/file-name]
列出垃圾箱中的文件
使用以下命令列出当前驻留在“垃圾箱”中的所有文件:
$ trash-list
清空垃圾桶
使用以下命令清空垃圾桶;这将从系统中永久删除文件:
$ trash-empty
从垃圾箱中恢复文件
使用以下命令之一将文件还原到删除文件的位置:
$ trash-restore
要么
$ restore-trash
运行此命令时,“Trash CLI”实用程序将列出“垃圾箱”中的所有文件,并为每个文件分配唯一编号。输入文件的数字以恢复它。