首页 > 系统相关 >Linux rm命令:删除文件或目录

Linux rm命令:删除文件或目录

时间:2023-11-03 22:34:54浏览次数:42  
标签:文件 删除 Linux test rm 目录 localhost

当 Linux 系统使用很长时间之后,可能会有一些已经没用的文件(即垃圾),这些文件不但会消耗宝贵的硬盘资源,还是降低系统的运行效率,因此需要及时地清理。

Linux rm命令:删除文件或目录_子目录

rm 是强大的删除命令,它可以永久性地删除文件系统中指定的文件或目录。在使用 rm 命令删除文件或目录时,系统不会产生任何提示信息。此命令的基本格式为:

[root@localhost ~]# rm[选项] 文件或目录
  • -f:强制删除(force),和 -i 选项相反,使用 -f,系统将不再询问,而是直接删除目标文件或目录。
  • -i:和 -f 正好相反,在删除文件或目录之前,系统会给出提示信息,使用 -i 可以有效防止不小心删除有用的文件或目录。
  • -r:递归删除,主要用于删除目录,可删除指定目录及包含的所有内容,包括所有的子目录和文件。

注意,rm 命令是一个具有破坏性的命令,因为 rm 命令会永久性地删除文件或目录,这就意味着,如果没有对文件或目录进行备份,一旦使用 rm 命令将其删除,将无法恢复,因此,尤其在使用 rm 命令删除目录时,要慎之又慎。

Linux rm命令:删除文件或目录_子目录_02

【例 1】基本用法。rm 命令如果任何选项都不加,则默认执行的是"rm -i 文件名",也就是在删除一个文件之前会先询问是否删除。例如:

[root@localhost ~]# touch cangls
[root@localhost ~]# rm cangls
rm:是否删除普通空文件"cangls"?y
#删除前会询问是否删除

【例 2】 删除目录。如果需要删除目录,则需要使用"-r"选项。例如:

[root@localhost ~]# mkdir -p /test/lm/movie/jp
#递归建立测试目录
[root@localhost ~]# rm /test
rm:无法删除"/test/": 是一个目录
#如果不加"-r"选项,则会报错
[root@localhost ~]# rm -r /test
rm:是否进入目录"/test"?y
rm:是否进入目录"/test/lm/movie"?y
rm:是否删除目录"/test/lm/movie/jp"?y
rm:是否删除目录"/test/lm/movie"?y
rm:是否删除目录"/test/lm"?y
rm:是否删除目录"/test"?y
#会分别询问是否进入子目录、是否删除子目录

大家会发现,如果每级目录和每个文件都需要确认,那么在实际使用中简直是灾难!

【例 3】强制删除。如果要删除的目录中有 1 万个子目录或子文件,那么普通的 rm 删除最少需要确认 1 万次。所以,在真正删除文件的时候,我们会选择强制删除。例如:

Linux rm命令:删除文件或目录_删除文件_03

[root@localhost ~]# mkdir -p /test/lm/movie/jp
#重新建立测试目录
[root@localhost ~]# rm -rf /test
#强制删除,一了百了

加入了强制功能之后,删除就会变得很简单,但是需要注意,数据强制删除之后无法恢复,除非依赖第三方的数据恢复工具,如 extundelete 等。

但要注意,数据恢复很难恢复完整的数据,一般能恢复 70%~80% 就很难得了。所以,与其把宝压在数据恢复上,不如养成良好的操作习惯。虽然 "-rf" 选项是用来删除目录的,但是删除文件也不会报错。所以,为了使用方便,一般不论是删除文件还是删除目录,都会直接使用 "-rf" 选项。

标签:文件,删除,Linux,test,rm,目录,localhost
From: https://blog.51cto.com/u_15641375/8174875

相关文章

  • linux使用top命令java进程占用65%内存和160%CPU,是因为什么咋解决?
    Java进程占用大量内存和CPU的原因可能有多种,以下是一些可能的原因和解决方法:内存泄漏:Java应用程序可能存在内存泄漏,即未正确释放不再使用的内存。您可以使用Java内存分析工具(如VisualVM、MAT等)来检测和分析应用程序的内存使用情况,并查找潜在的内存泄漏问题。一旦发现内存泄漏,您可以......
  • Linux第五章 计时器和计时器服务
    #5.计时器和计时器服务本章介绍计时器和计时器服务。它解释了硬件定时器的原理和基于Intelx86的PC中的硬件定时器。它涵盖了CPU操作和中断处理。它描述了与计时器相关的系统调用、库函数和Linux计时器服务的命令。它讨论了进程间隔定时器、计时器生成信号,并通过示例演示了进程......
  • 无涯教程-MongoDB - 删除数据
    在本章中,无涯教程将学习如何使用MongoDB删除文档。remove()方法MongoDB的remove()方法用于从集合中删除文档,remove()方法接受两个参数。第一个是删除条件,第二个是justOne标志。deletion - (可选)根据文档的删除条件。justOne  - (可选)如果设置为true或1,则仅删......
  • Linux查看物理CPU个数、核数、逻辑CPU个数
    Linux查看物理CPU个数、核数、逻辑CPU个数|总核数=物理CPU个数X每颗物理CPU的核数总逻辑CPU数=物理CPU个数X每颗物理CPU的核数X超线程数查看物理CPU个数cat/proc/cpuinfo|grep"physicalid"|sort|uniq|wc-l查看每个物理CPU中core的个数(即核数)cat/proc......
  • C# winform控件大小跟随窗体大小改变
    intiFormWidth,iFormHeight;//初始窗体宽高//窗体加载事件privatevoidForm1_Load(objectsender,EventArgse){iFormWidth=this.Width;//初始宽iFormHeight=this.Height;//初始高WriteIn_Tags(this);//记录初始控件信息}//调整控件大小事件privat......
  • 第10周linux课堂总结
        这周的linux课程我们学习了进程管理,首先我们学习的是查看进程,查看进程分为静态查看进程和动态查看进程,ps命令可以查看静态进程,仅仅是捕捉某一个瞬间某一个进程的状态,类似于给进程制作快照,使用“psaux”命令可以查看当前目录的进程,查询出来的进程状态表中每一列的含义......
  • 虚拟机中的Linux系统如何联网
    Step1:开启虚拟机后,在命令行输入pingwww.baidu.com回车,若发现无法ping通,说明虚拟机此时无法与外界网络互连,需要修改设置,以使其能联网。Step2:先关闭虚拟机,在VMware界面单击虚拟机,进入初始界面后,首先点击编辑虚拟机设置,然后将网络适配器中网络连接改为NAT模式。Step3:将网络连接改......
  • Linux 文件目录配置及命令总结
    前言在Linux中,一切皆文件,而每一个文件和目录都是从根目录开始的Linux文件目录的作用/bin目录:用来存放二进制可执行命令的目录,用户常用的命令都存在该目录下。/sbin目录:用来存放二进制可执行文件,这里面的命令只供系统管理员,管理系统使用(root用户)。/dev目录:设备文件存放的......
  • Linux越学越头疼,我要怎么办?
    最近,听到一些同学说,“Linux越学越头疼”。其实这句话,在我之前刚接触Linux的时候,也是深有感触。Linux越学越不明所以。最后干脆放弃学习,转而学习其他东西。其实大家在初学Linux的时候,有这个感受,也是十分正常和普遍的。我们大家从一开始接触计算机,便一直是Windows系统,从未使用过Li......
  • [论文阅读] Painterly Image Harmonization using Diffusion Model
    Pretitle:PainterlyImageHarmonizationusingDiffusionModelaccepted:AAAI2023paper:https://arxiv.org/abs/2212.08846code:https://github.com/bcmi/PHDiffusion-Painterly-Image-Harmonizationref:https://mp.weixin.qq.com/s/0AzaD8qVOFJrFeeIaJ4sTgref:h......