如何在Linux上删除或者删除目录
如何使用rmdir命令
rmdir命令从文件系统中删除目录或者目录列表,前提是它们为空。该命令非常简单,没有提供太多功能。
删除一个空目录。
要删除单个空目录rmdir,请输入目录路径作为参数。例如,要删除目录" / tmp / logs",可以使用以下命令。
rmdir /tmp/logs
使用rmdir删除多个空目录
目录列表可以提供给rmdir命令。如果每个目录为空,则将其删除。
要删除多个目录,我们将需要使用-p标志。设置后,每个目录参数都将被视为将删除所有组件的路径名。
例如,要删除目录" / tmp / logs1"," / tmp / logs2"和" / tmp / downloads",可以运行以下" rmdir"命令。
rmdir -p /tmp/logs1 /tmp/logs2 /tmp/downloads
用rm删除非空目录
rm命令通常用于删除非目录类型的文件。但是,它确实支持删除目录,这是删除目录的最常用方法。
与rmdir
命令不同,rm
命令将删除空目录和非空目录。如果目录不为空,其内容将与目录一起删除。这包括嵌套目录。
使用rm删除目录和其他文件类型
要使用rm命令删除目录,可以使用-d标志。指示rm在删除文件系统对象时包括目录,默认情况下不包括这些目录。
rm -d ./temp/data
用rm删除嵌套目录层次结构
rm命令也可以删除嵌套目录。为了删除Linux文件系统上的目录层次结构,请使用-r或者-R标志。
rm命令将提示我们确认嵌套目录的删除,因为这可能是非常有害的操作。
rm -r ./tmp/data
使用rm命令强制删除嵌套目录
在Linux文件系统上删除目录和嵌套目录的最常用方法是强制执行此操作。这是删除整个目录层次结构的非常危险的方式,因为没有确认提示。
如果用户具有对这些文件和目录的许可,则给定路径中的所有文件和目录将从文件系统中删除。使用此命令时要格外小心。
要强制删除所有文件和目录,请使用-r和-f标志。可以将标志与单个连字符组合在一起以简化命令。
例如,要删除路径" / tmp / app"下的所有文件和目录,可以使用以下命令。
rm -rf /tmp/app
使用rm命令删除安全隐私
在几乎所有文件系统上执行典型的文件删除操作只会删除文件系统数据库中的文件条目。字节将保留在磁盘上,直到最终被覆盖。
当处理高度敏感的数据时,简单的文件或者目录删除将无法安全地删除数据。 rm命令能够删除文件时覆盖数据,它通过在文件上写入模式0xff,0x00和0xff来实现。
这种方法实际上使不可能恢复数据。
要从Linux文件系统中安全删除文件和目录,请使用-P标志。
rm -rf -P /tmp/sensitive-data