
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 |
总结
关键点回顾
- 核心用法 :
- 删除文件:
rm 文件名/rm -f 文件名; - 删除目录:
rm -rf 目录名(你操作 Vue 项目的核心用法);
- 删除文件:
- 安全原则 :
- 执行
rm -rf前先pwd确认目录; - 重要文件删除前加
-i确认,或先备份;
- 执行
- 高危禁止 :绝对不要执行
rm -rf /或rm -rf ~。
掌握 rm 的核心参数(-r/-f)就能安全高效地删除文件 / 目录,避免因误操作导致数据丢失。