Linux学习四之 rm 命令详解

rm 是 Unix/Linux/macOS 系统中删除文件 / 目录 的核心命令,这节介绍 rm 的用法、常见参数和安全注意事项(避免误删)。

一、rm 核心语法

bash 复制代码
rm [参数] 目标文件/目录
  • 核心作用:删除文件或目录(默认仅能删除文件,删除目录需加参数);
  • 注意:rm 删除的文件默认无法恢复(无回收站),操作需谨慎!

二、最常用参数(必记)

参数 含义 示例 适用场景
-f 强制删除(忽略不存在的文件,无提示) rm -f test.txt 确定要删除,不想被提示打断
-r/-R 递归删除(删除目录及目录下所有内容) rm -r mydir 删除非空目录
-rf 强制递归删除(最常用,无提示删除目录) rm -rf node_modules 快速删除项目依赖目录、日志目录等
-i 交互式删除(删除前逐一确认) rm -i test.txt 谨慎操作,避免误删

三、高频使用场景

场景 1:删除单个文件
bash 复制代码
# 删除普通文件(会提示确认,输入 y 确认)
rm test.txt

# 强制删除文件(无提示)
rm -f .env.local
场景 2:删除目录(你最常用的场景)
bash 复制代码
# 删除空目录(直接删)
rm -r empty-dir

# 删除非空目录(如 Vue 项目的 node_modules)
rm -rf node_modules

# 强制删除 yarn.lock 锁定文件
rm -f yarn.lock
场景 3:批量删除指定类型文件
bash 复制代码
# 删除当前目录下所有 .log 日志文件
rm -f *.log

# 删除当前目录下所有 .txt 文件(交互式,逐一确认)
rm -i *.txt

四、安全注意事项(避坑!)

1. 绝对禁止执行的高危命令
复制代码
# !!!切勿执行!!!删除根目录所有文件,系统直接报废
rm -rf /

# !!!切勿执行!!!删除当前用户所有文件
rm -rf ~

✅ 防护:执行 rm -rf 前,先执行 pwd 确认当前目录,避免删错!

2. 避免误删的小技巧
  • 加 -i 参数:删除前确认(适合重要文件);
  • 先备份:删除重要目录前,先压缩备份(如 tar -zcf node_modules.tar.gz node_modules);
  • 用 ls 预览:删除前先查看要删的内容(如 ls node_modules)。
3. 误删后的补救(仅参考,成功率低)
  • macOS 可尝试从「访达 → 废纸篓」恢复(仅当文件是通过访达删除,rm 删除的不会进废纸篓);
  • 专业数据恢复工具:如 Disk Drill(macOS)、TestDisk(Linux),但耗时且不一定能恢复。

五、与 rm 相关的实用命令

命令 作用 示例
rmdir 仅删除空目录(比 rm -r 安全) rmdir empty-dir
trash 将文件移到废纸篓(替代 rm,可恢复) brew install trash && trash test.txt

总结

关键点回顾

  1. 核心用法 :
    • 删除文件:rm 文件名 / rm -f 文件名;
    • 删除目录:rm -rf 目录名(你操作 Vue 项目的核心用法);
  2. 安全原则 :
    • 执行 rm -rf 前先 pwd 确认目录;
    • 重要文件删除前加 -i 确认,或先备份;
  3. 高危禁止 :绝对不要执行 rm -rf / 或 rm -rf ~。

掌握 rm 的核心参数(-r/-f)就能安全高效地删除文件 / 目录,避免因误操作导致数据丢失。

相关推荐
Decay__10 分钟前
05_MySQL 常用 SQL 大全 —— 诊断、管理、优化辅助 SQL 与三大系统库速查
运维·数据库·sql·mysql·架构
贞明电子2 小时前
工业三色报警灯怎么接入项目系统?开关量与RS485控制应用指南
运维·网络·微信公众平台·贞明电子
代码山河2 小时前
Python就业方向全解析:后端、爬虫、数据分析、AI你选哪个?
python·学习·架构·教程·面向对象·项目
HideF3 小时前
Linux
linux·服务器·网络
万联WANFLOW3 小时前
海外网络故障怎么排查?Cloudflare 三季度断网报告解读与 mtr 实战
运维·网络·故障分析
释厄6233 小时前
AI学习层更新与跨体转移律——人类社会同构·不缺理解缺 U
人工智能·学习
Ruiery5 小时前
Linux 6.6内核内存管理深度解析(十三):slab/slub 分配器
linux·运维·服务器
Decay__6 小时前
04_MySQL DBA 日常运维手册 —— 会话管理、锁与阻塞、事务监控、慢查询与日志巡检
运维·数据库·sql·mysql·架构
丰锋ff7 小时前
压缩命令笔记
linux
小嘉丶学长7 小时前
Day14 · 字典与集合
java·开发语言·网络·python·学习·1024程序员节