你早已学会了创建文件和目录。如今是时侯学习怎样在命令行中删掉文件和文件夹了。
在终端基础系列的前几章中,你学习了创建新文件和目录(文件夹)。
如今让我们瞧瞧怎样在Linux终端中删掉文件和文件夹。
删掉文件
要删掉文件,你可以按以下方法使用rm命令:
rm filename_or_path
假如文件已成功删掉,你将看不到任何输出。
这是一个示例,其中我删掉了一个名为new_file的文件。当我列举目录内容时,你可以听到new_file不再存在。
你还可以在同一命令中删掉多个文件:
rm file1 file2 file3
让我展示一个在单条命令中删掉两个文件的示例。
️练习文件删掉
让我们练习一下刚才学到的东西。创建一个名为practice_delete的目录并切换到该目录:
mkdir practice_delete && cd practice_delete
如今创建一些空文件:
touch file1 file2 file3
删掉file3:
rm file3
如今,让我们做一些额外的事情。运行此命令并修改file2的权限:
chmod u-w file1 file2
如今尝试删掉file2:
rm file2
你是否听到消息“removewriteprotectedfile”?那是由于你从这个文件中删掉了写权限(用于更改)。
你可以按Y或回车键确认删掉或按N拒绝删掉。
假如你不想见到这条消息并一直删掉它,你可以使用强制删掉选项-f。通过删掉file1试试:
rm -f file1
以下是上述所有示例的重放:
Linux命令行中没有垃圾桶。一旦文件被删掉,你就未能像在图形文件管理器中那样撤销将其从垃圾箱中拿回的操作。为此linux操作系统教程,删掉文件时要分外当心。
当心删掉
缺乏垃圾桶使删掉成为一种永久性的工作。这就是为何你应当注意要删掉的文件的诱因。
有一个带-i选项的交互模式。有了这个,你会被要求确认删掉。
rm -i filename
当你按照特定模式删掉多个文件时,这很有用。
这是一个示例,其中我以交互方法删掉名称中匹配file_模式的所有文件。我删掉了一些并在交互模式下保留了一些。
我建议切换到文件所在的目录,之后删掉它们。这有助于降低由文件路径中的拼写错误导致的任何可能性。
删掉目录
在Linux中有专门的rmdir命令来删掉目录。
rmdir dir_name
然而,它只能删掉空目录。假如目录中有任何文件或子目录linux怎么删除文件夹,rmdir命令将抛出错误。
$ rmdir dir2
rmdir: failed to remove 'dir2': Directory not empty
这促使它在大多数情况下好处不大。
这么,怎么删掉非空文件夹呢?好吧,使用与之前删掉文件相同的rm命令。
是的,相同的rm命令,但带有递归选项-r:
rm -r dir_name
️练习文件夹删掉
让我们练习你学到的东西。
假如你还没有,请切换到practice_delete文件夹。如今linux怎么删除文件夹,创建两个目录dir1和dir2。
mkdir dir1 dir2
在dir2中创建一个文件:
touch dir2/file
如今尝试使用rmdir命令删掉目录:
rmdir dir1
rmdir dir2
因为dir2不为空,rmdir命令将失败。相反,使用带有递归选项的rm命令:
rm -r dir2
以下是上述所有命令示例的重放:
交互式删掉模式在使用rm命令的递归选项删掉目录时更有帮助:
rm-ri dir_name
因而,你学会了使用Linux命令删掉文件和文件夹。是时侯多练习了。
测试你的知识
打算一个如下所示的目录树:
.
├── dir1
│ ├── file1
│ ├── file2
│ └── file3
├── dir2
├── dir3
└── file
基本上linux学习论坛,你在当前目录(practice_delete)中创建一个名为file的文件和三个目录dir1、dir2和dir3。之后在dir1中创建文件file1、file2和file3。
如今执行以下操作:
一切进展顺利。你已然学习了一些基本知识,比如切换目录、检查目录内容、创建和删掉文件和目录。在下一章中,你将学习怎么在终端中复制文件和文件夹。敬请关注!
via:
作者:AbhishekPrakash选题:lkxed译者:geekpi校对:wxy
本文由LCTT原创编译,Linux中国荣誉推出