在 CentOS 系统中,rm
命令用于删除文件和目录,使用时需谨慎,因为删除后通常无法恢复。以下是 rm
命令的详细使用方法:
rm [选项] 文件或目录
选项 | 作用 |
---|---|
-f |
强制删除(忽略不存在的文件,不提示确认) |
-i |
交互式删除(删除前逐一询问确认) |
-r 或 -R |
递归删除目录及其内容(用于删除目录) |
-v |
显示删除的详细过程 |
--preserve-root |
保护根目录 / (默认启用,防止误删系统根目录) |
删除单个文件
rm filename.txt
强制删除文件(无确认提示)
rm -f filename.txt
交互式删除(每个文件需确认)
rm -i *.log # 删除所有.log文件时逐一确认
递归删除目录(含子目录和文件)
rm -r mydir/ # 删除目录及其内容
强制递归删除目录(无确认)
rm -rf mydir/ # 慎用!直接删除整个目录树
显示删除过程(verbose)
rm -v oldfile.txt # 输出:removed 'oldfile.txt'
rm -rf /
或 rm -rf /*
此命令会强制删除根目录下所有文件(包括系统文件),导致系统崩溃。CentOS 默认启用 --preserve-root
会阻止此操作,但部分变种命令(如 rm -rf ./*
)仍可能造成灾难。
误删重要文件
建议在脚本或频繁操作时使用 -i
选项确认,或使用 trash-cli
工具替代(将文件移至回收站)。
使用 trash-cli
(需安装)
sudo yum install trash-cli # 安装
trash-put filename # 将文件移至回收站
备份后删除
cp -r dir_to_delete/ /backup/ && rm -r dir_to_delete/
extundelete
或 testdisk
工具恢复(需提前安装)。总结:
- 删除前务必确认路径,尤其是使用 -rf
时。
- 重要数据建议备份或使用回收站工具。
- 生产环境中可设置 alias rm='rm -i'
到 .bashrc
以默认交互式删除。