Linux 中的删除目录:rm 和 rmdir 解析

Linux 中,需要删除目录文件时靠两个命令就能完成:rm 和 rmdir。乍一看它们相似,但行为却截然不同,如使用错误的命令,可能会删除远超预期的内容。

Linux rm 和 rmdir:命令概述

在执行任何删除命令之前,先要知道自己在文件系统中的位置。pwd 命令可以显示当前的工作目录,LS 会列出里面有什么。

以下是命令执行内容的快速参考:

RM 选项一览:

  • rm -d – 移除空目录
  • rm -r – 递归地移除目录及其所有内容
  • rm -f – 删除写保护文件时跳过确认提示
  • rm -rf – 递归删除,无提示,是否写保护
  • rm -i – 每次删除前的提示
  • rm -I – 如果删除超过 3 个文件,则出现单一提示
  • RM * – 多字符匹配的通配符
  • RM?– 通配符恰好匹配一个字符

RMDIR 选项:

  • rmdir -p – 移除空子目录及其父目录
  • rmdir -v – 打印目录已被移除的确认

经验法则:当你确定目录是空的,并且想防止文件意外丢失时,使用 rmdir;需要删除目录及其所有内容时则用 rm -r

在 Linux 运行任何删除命令前,一定要先进行备份。因为这些删除命令是永久性的,没有撤销的办法。

Rmdir 删除空目录

rmdir 命令通常用于删除空目录。如果你想使用命令行工具来删除一个空目录,可以使用rmdir——如果删除的不是空目录,将会报错并返回以下错误:

rmdir: failed to remove 'Directory': Directory not empty

基本语法:

rmdir DirectoryName

要在一个命令中删除多个空目录,请将它们列为独立的参数:

rmdir Directory_1 Directory_2 Directory_3

移除子目录及其父目录

-p 选项会移除一个子目录,沿路径向上移动,如果子目录消失后父目录也空,则删除该子目录:

rmdir -p /Directory/SubDirectory

这样先移除 SubDirectory,然后移除 Directory——但前提是 Directory 此时没有其他内容。

以 -v 确认删除

-v 标志会为每个被移除的目录打印一条消息。在删除多个目录并想确认具体删除内容时非常有用:

rmdir -v Simple-Directory

rmdir: removing directory, 'Simple-Directory'

 rm -r 删除非空目录

RM 是一个文件删除命令,但结合 -r(递归)后,它成为删除目录树的标准工具。递归标志会让它下降到子目录,删除所有子目录东西。

基本递归移除:

rm -r Simple-Directory

警告:这会永久删除目录及其内的所有内容。恢复需要备份。

跳过带有 -rf 的写保护提示

当目录或其内容被写保护时,rm 会暂停并在每个文件前请求确认。如果你对删除的内容有信心,-rf 会跳过所有提示:

rm -rf Simple-Directory

小心使用。递归和强制的结合是该命令最具破坏性的变体。跑之前一定要仔细检查路径。

一次删除多个目录

你可以通过一个 Linux 删除目录操作,将多个目录名作为参数传递,从而全部移除:

rm -r Directory_1 Directory_2 Directory_3

在 Linux 中使用 rm 命令删除文件

有时你想从目录中移除特定文件,但不涉及目录结构本身。

从当前工作目录中移除一个文件:

rm file.txt

一次删除多个文件:

rm file1.txt file2.txt file3.txt

通过指定路径移除不同目录中的文件:

rm dir/subdir/file.txt

带确认标志的安全删除

每次删除前都会提示 -i 标记。虽然慢一些,但如果你删除最近没检查过的文件,这样做很安全:

rm -i file1.txt file2.txt file3.txt

终端会要求每个文件填写 Y/N。如果你要删除大量文件且只想要一个确认,可以用 -I

rm -I file1.txt file2.txt file3.txt

要跳过所有确认,包括写保护文件,请使用 -f

rm -f file.txt

使用通配符删除多个文件

通配符让你用一个命令匹配文件组,而不是单独列出。星号可匹配任意数量的字符;问号正好对应一个。

删除当前目录中的所有.txt 文件:

rm *.txt

删除所有以字母’a’开头的文件:

rm a*

删除带有单字符扩展名的文件:

rm *.?

警告:先运行 ls,确认通配符模式匹配哪些文件后再用 rm。

快速参考:RM 与 RMDIR

  • rmdir – 仅限空目录,默认安全,若目录有内容则返回错误
  • RM -D – RM 对应空目录的应用
  • rm -r – 递归地移除非空目录;无法挽回
  • rm -rf – 递归,无提示;只有在确定目标目标时才使用。
  • RM -I – 互动模式;每次删除前的确认
  • RM * / RM ?– 批次删除的通配符;运行前用 LS 确认

原创文章,作者:余初云,如若转载,请注明出处:https://blog.jidcy.com/jsjc/2215.html

Like (0)
Previous 2026年3月30日 上午10:03
Next 2026年3月30日 上午11:45

相关推荐

  • 如何在 Linux 上重置 MySQL 的 Root 根密码

    服务器的 MySQL Root 密码,可用于登录数据库控制台手动创建数据库、新建用户并关联数据库、为指定数据库分配用户权限等操作。 若遗忘 MySQL Root 用户密码,可按照下…

    2026年5月26日
    0
  • 什么是渗透测试?渗透测试有什么作用?

    现实环境中,中小企业所面临的网络安全威胁复杂多元。而最大的风险,恰恰是企业自认为防护足够牢固,殊不知威胁早已悄然潜入内部,伺机而动。伴随安全行业的进步与技术人员防护认知的增强,以渗…

    2026年5月28日
    0
  • HTTPS靠什么保障通信安全?

    大多数人都听说过HTTPS,也清楚它的作用是保障通信安全,但如果没仔细研究过,大概率说不清它到底是怎么做到的。 这篇文章围绕三个核心问题展开: 1、HTTPS到底是什么? 2、它跟…

    2026年6月11日
    0
  • CC攻击的原理及表现

    CC攻击又可以被称为Challenge Collapsar攻击,是一种十分常见的分布式拒绝服务攻击方式,CC攻击的工作原理是在与攻击者通过控制一系列主机,不间断的向目标服务器发送大…

    2026年6月24日
    0
  • 云计算安全防护方案解析

    云计算安全是指一系列旨在保护数据、应用程序及技术基础设施的技术、解决方案与流程。它的重要性体现在,不仅能够守护企业与客户的数据安全,还能确保业务的持续稳定运行。本文将具体阐述云计算…

    2026年4月25日
    0
  • DDoS攻击是什么?如何进行DDoS防御防护?攻击原理手法详解

    什么是DDoS攻击?企业应如何加强针对DDoS攻击的防范?五大关键方向:建立分析与检测机制、多层架构、负载均衡处理、使用DDoS防护服务以及制定应急措施,都是必不可少的! 什么是D…

    2026年4月2日
    0
  • 什么是ARP攻击?

    什么是ARP? ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播…

    2026年5月22日
    0
  • 拒绝服务攻击 DoS 与 DDoS 解析

    在网络安全领域,DoS 和 DDoS 是两类高频且危害显著的攻击方式,二者核心目的都是让目标网络或服务器无法正常提供服务,但攻击模式、破坏力和应对难度截然不同。 DoS,即拒绝服务…

    2026年5月18日
    0
  • 什么是SSL证书?为什么要买SSL证书?

    我们在访问一个站点的时候,如果网页地址栏提示“不安全”,你还敢继续浏览吗? 互联网已经融入生活的方方面面,但随之而来的钓鱼网站、信息窃取等问题,总是让人头疼。我们在网上购物、使用网…

    2026年4月25日
    0
  • 什么是Apache?Apache的功能特点

    PHP的正常运行离不开服务器的支撑与配合,那么什么是服务器呢?其实就是在一台计算机设备上,安装配置好一款服务器软件,这台计算机便可以称之为服务器了。服务器软件与计算机本身所搭载的操…

    2026年7月15日
    0