【Linux基础】Linux磁盘空间管理之批量删除文件

📊 1. 查看目录大小

1.1 基本命令

复制代码
# 查看当前目录总大小
du -sh

# 查看当前目录下各子目录和文件大小
du -sh *

1.2 排序显示

复制代码
# 按大小排序(从小到大)
du -sh * | sort -h

# 按大小排序(从大到小)
du -sh * | sort -rh

# 显示前10大目录
du -sh * | sort -rh | head -10

🔍 2. 查找大文件

2.1 按大小查找

复制代码
# 查找大于100MB的文件
find . -type f -size +100M

# 查找大于1GB的文件
find . -type f -size +1G

# 查找大于1000MB的文件
find . -type f -size +1000M

2.2 显示详细信息

复制代码
# 显示文件详细信息
find . -type f -size +100M -ls

🗑️ 3. 删除文件操作

3.1 先查看再操作

复制代码
# 先查看文件确认
find . -type f -name "neSNeP.ld" -ls

3.2 交互式删除(安全)

复制代码
# 每个文件都询问确认
find . -type f -name "neSNeP.ld" -ok rm {} \;

# 使用rm的交互模式
find . -type f -name "neSNeP.ld" -exec rm -i {} \;

3.3 直接删除

复制代码
# 直接删除不询问
find . -type f -name "ld.vcf" -exec rm {} \;

# 使用delete参数
find . -type f -name "ld.vcf" -delete

# 批量删除特定扩展名
find . -type f -name "*.fst" -delete

📁 4. 控制搜索范围

4.1 限制搜索深度

复制代码
# 仅搜索当前目录
find . -maxdepth 1 -type f -name "*.ped" -ls

# 搜索两层深度
find . -maxdepth 2 -type f -name "*.log"
#./com_ped/merge.log

# 指定深度范围
find . -mindepth 2 -maxdepth 3 -type f -name "*.log"
# ./5breedrm12s/output/IBSmatrix.log

🎯 5. 常见应用场景

场景1:清理临时文件

复制代码
# 删除所有.tmp文件
find . -type f -name "*.tmp" -delete

# 删除超过7天的.tmp文件
find . -type f -name "*.log" -mtime +7 -delete

场景2:删除含关键词文件

复制代码
# 删除文件名包含temp的文件
find . -maxdepth 1 -type f -name "*temp*" -exec rm -v {} \;

⚡ 6. 高级技巧

6.1 查找并统计

复制代码
# 统计大于100M的文件数
find . -type f -size +100M | wc -l

# 计算大文件总大小
find . -type f -size +100M -exec du -ch {} + | tail -1

6.2 按时间查找

复制代码
# 查找7天前修改的文件
find . -type f -mtime +7

# 查找24小时内修改的文件
find . -type f -mtime -1

# 删除30天前且大于100M的文件
find . -type f -size +100M -mtime +30 -delete

📋 7. 命令速查表

功能 命令 说明
目录大小 du -sh * 查看各项目大小
大小排序 du -sh * | sort -h 从小到大排序
查找大文件 find . -type f -size +100M 找大于100M文件
安全删除 find . -name "*.tmp" -ok rm {} \; 每个文件确认
批量删除 find . -name "*.tmp" -delete 直接删除
当前目录 find . -maxdepth 1 -name "*.log" 不搜索子目录

🚨 8. 安全操作建议

  1. 先查看后操作 :永远先用-ls查看确认

  2. 交互式确认 :重要文件使用-ok-i参数

  3. 定期备份:重要数据定期备份

  4. 测试环境练习:不熟悉的命令先在测试环境练习

  5. 记录操作:重要删除前记录文件列表

💡 使用流程建议

  1. 诊断 :使用du -sh *查看空间占用

  2. 定位 :使用find . -type f -size +100M定位大文件

  3. 确认 :使用-ls查看文件详情

  4. 备份:重要文件先备份

  5. 删除 :使用-ok交互式删除或-delete批量删除

黄金法则:不确定时,先查看,再确认,最后删除!

前面也写了几篇关于linux最基本入门的命令可以做参考

相关推荐
嵩山小老虎7 小时前
Windows 10/11 安装 WSL2 并配置 VSCode 开发环境(C 语言 / Linux API 适用)
linux·windows·vscode
Fleshy数模7 小时前
CentOS7 安装配置 MySQL5.7 完整教程(本地虚拟机学习版)
linux·mysql·centos
a41324478 小时前
ubuntu 25 安装vllm
linux·服务器·ubuntu·vllm
一只自律的鸡9 小时前
【Linux驱动】bug处理 ens33找不到IP
linux·运维·bug
17(无规则自律)9 小时前
【CSAPP 读书笔记】第二章:信息的表示和处理
linux·嵌入式硬件·考研·高考
!chen9 小时前
linux服务器静默安装Oracle26ai
linux·运维·服务器
REDcker10 小时前
Linux 文件描述符与 Socket 选项操作详解
linux·运维·网络
蒹葭玉树10 小时前
【C++上岸】C++常见面试题目--操作系统篇(第二十八期)
linux·c++·面试
2501_9277730710 小时前
imx6驱动
linux·运维·服务器
hy____12310 小时前
Linux_进程间通信
linux·运维·服务器