要从命令行删除Linux 文件或目录,可以使用rm
命令删除,使用rm
命令删除文件或目录时需要格外小心,因为一旦删除文件,就无法恢复。
如果你想让你的文件在不被那么轻易的删除,可以使用safe-rm命令。要删除单个文件,请使用rm
命令后面跟文件名。
如果文件处于写保护状态,系统将提示您进行确认,如下所示。输入y
并按Enter
。如果文件没有写保护,它将被直接删除。
rm filename
rm: remove write-protected regular empty file 'filename'?
要一次删除多个文件,rm
命令后跟多个文件名称,文件的名称使用空格分隔。您也可以使用通配符*
和正则表达式来匹配多个文件。
当您使用通配符*
和或者正则表达式匹配多个文件时,建议使用ls
命令列出要删除的文件,使你可以在运行rm
命令之前确认即将要删除的文件。
例如命令rm *.pdf
,要删除当前目录文件的.pdf
文件。rm filename1 filename2 filename3
命令将会删除多个文件
rm filename1 filename2 filename3
rm *.pdf
rm命令的-i
选项指示rm
命令在删除文件之前提示用户,确认是否需要删除。你将会看到消息rm: remove regular empty file 'filename1'?,确认键入y
,然后按Enter
。
当删除的文件与目录太多时,你可能不想让用户每个文件都确认一次。但你又需要提示用户一次。此时你可以使用rm命令的-I
选项。
-I
选项对于在删除许多文件与目录时,仅需要用户确认一次。你将会看到类似这样的消息rm: remove 4 arguments?。确认键入y
,然后按Enter
。
rm -i filename1 filename2
rm -I filename1 filename2 filename3 filename4
rm: remove regular empty file 'filename1'?
rm: remove regular empty file 'filename2'?
rm: remove 4 arguments?
删除目录/文件夹
要删除一个或多个空目录,请使用rm命令的-d
选项。-d
选项在功能上与rmdir
命令相同。
如果要递归删除目录和文件,请使用rm命令-r
选项进行递归删除。通常,你很少使用-d
选项删除目录。而是直接使用-r
选项。
rm -d dirname
rm -r dirname
rm -rf
如果指定目录或目录中的文件受写保护,rm
命令将提示您确认操作。是否要删除文件与目录。
如果你不需要任何确认消息,请使用rm命令的-f
选项。通常在使用-f
选项时都会组合使用-r
选项进行递归删除。
在rm -rf
命令时你应该格外小心,因为rm命令的删除是没有回收站的,也么没有可以恢复数据的魔法。
rm -rf dirname