Linux中rm与rmdir命令对比!
老男孩IT教育
行业新闻
2025年12月30日 16:23
在Linux文件管理操作中,rm与rmdir均是实现删除操作的核心命令,二者功能看似相近,实际适用场景与使用规则却截然不同,误用极易引发文件误删、操作失败等问题。接下来通过这篇文章对比一下Linux中rm与rmdir命令!
在Linux文件管理操作中,rm与rmdir均是实现删除操作的核心命令,二者功能看似相近,实际适用场景与使用规则却截然不同,误用极易引发文件误删、操作失败等问题。接下来通过这篇文章对比一下Linux中rm与rmdir命令!

功能定位不同
rmdir 专用于删除空目录,即目录中不能包含任何文件或其他子目录。只要目录非空,命令就会报错并拒绝执行。
rm是一个更通用的删除命令,既能删除文件,也能删除目录及其内容。配合特定选项,它可以递归删除整个目录树。
使用场景示例
假设有一个空目录/tmp/empty_dir:
rmdir /tmp/empty_dir:成功删除
rmdir /tmp/has_files:失败,提示“目录非空”
若要删除包含内容的目录/tmp/project:
rm -r /tmp/project:递归删除所有内容及目录本身
rm file.txt:仅删除单个文件
常用选项对比
rmdir支持有限选项,常见有:
--ignore-fail-on-non-empty:忽略非空目录的错误,继续执行
-p:可级联删除父目录,前提是它们也为空(类似 mkdir -p 的逆操作)
rm提供更多控制选项:
-r或-R:递归处理目录
-f:强制删除,不提示确认
-i:删除前交互式确认(部分系统默认启用)
安全注意事项
rmdir相对安全,因为它只删空目录,误操作风险小。
rm -r功能强大但危险,尤其加上-f后会直接删除而不提示。误用如rm -rf/可能导致系统崩溃。
老男孩教育是行业内较早开设Linux运维云计算课程培训的学校,在行业内深耕十多年,经过多年的技术沉淀,重磅打造Linux云计算SRE运维课程。该课程内容体系完善、实战项目丰富,贴合企业用人标准,学完即具备真实实战经验,更好的满足企业用人所需。
老男孩教育专注IT教育10余年,只培养IT技术精英
全国免费咨询电话(渠道合作):400-609-2893











