在 Linux 系统中删除文件可以通过多种命令实现,以下是详细方法及注意事项:
rm
命令(最常用)rm 文件名
示例:
rm old_file.txt
常用选项:
- -i
交互式删除(删除前确认):
bash
rm -i file.txt
- -f
强制删除(忽略不存在的文件或警告):
bash
rm -f file.txt
- -r
递归删除(用于删除目录及内容):
bash
rm -r directory/
rm file1.txt file2.txt file3.txt
或使用通配符(*
匹配任意字符):
rm *.log # 删除所有 .log 文件
rm prefix_* # 删除以 prefix_ 开头的文件
unlink
命令(仅删除单个文件)unlink 文件名
特点:
- 只能删除单个文件(不支持通配符或目录)。
- 是底层系统调用,比 rm
更轻量。
rmdir 目录名
注意: 仅当目录为空时有效,否则会报错。
使用 shred
或 wipe
工具防止数据恢复:
shred -u -z -n 5 file.txt
-u
:删除文件-z
:最后用零覆盖-n 5
:覆盖 5 次extundelete
等工具)。rm -rf
:bash
rm -rf / # 绝对禁止!会删除整个系统!
cp
备份再删除。若文件被误删且分区未被覆盖,可尝试:
extundelete /dev/sdX --restore-file 路径/文件名
(需提前安装 extundelete
工具)
根据需求选择合适的方法,谨慎操作即可!