centos7 文件夹下 按年月统计文件大小

news/2025/11/6 10:53:27/文章来源:https://www.cnblogs.com/hjj1215/p/19195802
我是一个运维人员,我想统计centos7.5环境下,/app/minio/file-bucket文件夹内,文件按照日期,按年月统计文件总大小

当然可以!我来帮您改造这个命令,使其能够按照年月分组统计。当前的命令只能按月份统计,无法区分不同年份的同月份。以下是几种改进方案:## 方案一:基于ls命令的改造(简单版)```bash ls
-l --time-style=+"%Y-%m" /app/minio/file-bucket | awk ' {# 提取年月和文件大小year_month = $6;size = $5;# 如果是文件且不是目录行if (year_month != "" && size ~ /^[0-9]+$/) {months[year_month] += size;} } END {# 按年月排序输出n = asorti(months, sorted);for (i = 1; i <= n; i++) {month = sorted[i];printf "年月: %s, 总大小: %.2f MB, %.2f GB\n", month, months[month]/1024/1024, months[month]/1024/1024/1024;} }' ```## 方案二:使用完整日期格式(推荐)```bash ls -l --time-style=+"%Y-%m-%d" /app/minio/file-bucket | awk ' {# 提取完整日期和文件大小date_str = $6;size = $5;# 如果是文件且不是目录行if (date_str != "" && size ~ /^[0-9]+$/) {# 提取年月部分 (前7个字符)year_month = substr(date_str, 1, 7);months[year_month] += size;count[year_month]++;} } END {# 按年月排序输出n = asorti(months, sorted);printf "%-10s %12s %12s %12s\n", "年月", "文件数量", "大小(MB)", "大小(GB)";print "----------------------------------------------------";for (i = 1; i <= n; i++) {month = sorted[i];printf "%-10s %12d %12.2f %12.2f\n", month, count[month], months[month]/1024/1024, months[month]/1024/1024/1024;} }' ```## 方案三:使用find命令获取更准确的信息```bash find /app/minio/file-bucket -type f -printf "%TY-%Tm %s\n" | awk ' {year_month = $1;size = $2;total[year_month] += size;count[year_month]++; } END {# 按年月排序输出n = asorti(total, sorted);printf "%-10s %12s %12s %12s\n", "年月", "文件数量", "大小(MB)", "大小(GB)";print "----------------------------------------------------";for (i = 1; i <= n; i++) {month = sorted[i];printf "%-10s %12d %12.2f %12.2f\n", month, count[month], total[month]/1024/1024, total[month]/1024/1024/1024;} }' ```## 方案四:功能完整的统计脚本```bash #!/bin/bashtarget_dir="/app/minio/file-bucket"echo "正在统计目录: $target_dir" echo "=========================================="ls -l --time-style=+"%Y-%m-%d" "$target_dir" | awk ' BEGIN {total_size = 0;total_files = 0; } {date_str = $6;size = $5;if (date_str != "" && size ~ /^[0-9]+$/) {year_month = substr(date_str, 1, 7);months[year_month] += size;count[year_month]++;total_size += size;total_files++;} } END {# 输出表头printf "%-10s %12s %12s %12s\n", "年月", "文件数量", "大小(MB)", "大小(GB)";print "----------------------------------------------------";# 按年月排序输出n = asorti(months, sorted);for (i = 1; i <= n; i++) {month = sorted[i];printf "%-10s %12d %12.2f %12.2f\n", month, count[month], months[month]/1024/1024, months[month]/1024/1024/1024;}print "----------------------------------------------------";printf "%-10s %12d %12.2f %12.2f\n", "总计", total_files, total_size/1024/1024, total_size/1024/1024/1024; }' ```## 各方案对比:- **方案一**:最接近您原有命令的改造,简单直接 - **方案二**:推荐使用,显示完整信息且格式美观 - **方案三**:使用find命令,更适合大量文件的情况 - **方案四**:功能最完整,包含总计信息## 使用建议:1. **如果目录文件不多**,使用方案二 2. **如果文件数量很大**,使用方案三(find命令效率更高) 3. **需要定期统计**,可以使用方案四保存为脚本您可以根据实际需求选择合适的方案。方案二应该是您最需要的,它在您原有命令基础上增加了年月分组和更好的显示格式。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/957559.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

完整教程:舆情处置的智能化进阶:Infoseek舆情系统如何构建企业数字免疫体系

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2025 年 BA 自控系统厂家最新推荐排行榜:行业优质企业核心优势全面解析,含权威测评数据空调箱 BA 自控系统/新风机组 BA 自控系统公司推荐

引言 在建筑楼宇智能化与工业自动化快速发展的当下,BA 自控系统作为保障建筑环境舒适、工业生产高效及能源合理利用的关键,市场需求持续攀升。但行业内厂家水平不一,为帮助需求方精准选择,行业协会开展了 BA 自控系…

基础HTTP GET 接口请求测试

打开JMETER,新建测试计划,右键添加“线程组”(线程组1、)线程组下添加“HTTP请求”,服务器名称/IP填写httpbin.org,端口80,请求方法选GET,路径填写/get添加“察看结果树”监听器,点击运行,验证响应状态码200…

HTTP POST表单提交接口测试

HTTP POST表单提交接口测试操作步骤:新建线程组(配置同上),添加“HTTP请求”,服务器httpbin.org,端口80,方法POST,路径/post。勾选“使用表单数据”,在参数栏添加2组数据(如username=test、password=123456)…

2025年铜陵钨杆回收公司权威推荐榜单:钨条回收/废钼回收/钼铁回收源头公司精选

在有色金属循环利用产业快速发展的背景下,钨、钼等稀有金属的回收再利用已成为资源可持续利用的重要环节。根据行业数据统计,2025年我国稀有金属回收市场规模预计突破500亿元,其中钨钼类金属因价值高、应用广,回收…

API接口测试

核心目的是在软件开发生命周琴早期发现缺陷、降低修复成本,并通过验证系统组件间的交互来提升整体稳定性、安全性和效率,尤其适用于前后端分离、微服务架构及高复杂度系统

▇壳子

#define gc getchar_unlocked template<typename T> void read(T &x) {char c = gc(); int f = 1; x = 0;while (!isdigit(c)) f = (c == - ? -f : f), c = gc();while (isdigit(c)) x = (x << 3) + …

AI元人文构想:人机共生智慧文明治理新范式整理报告

AI元人文构想:人机共生智慧文明治理新范式整理报告 核心摘要 AI元人文构想是由岐金兰提出的应对智能时代价值困境的系统性框架,其核心在于从传统"价值对齐"范式转向"价值共生"范式,通过"三…

2025年湖南专利申请公司权威推荐榜单:期刊论文公司/专著合著出版公司/重点课题申报服务机构精选

在创新驱动发展的时代背景下,专利已成为企业提升核心竞争力、保护知识产权的重要战略资源。2024年,中国发明专利有效量达到惊人的数字,展示了我国强大的创新活力。本文将基于2025年行业数据,为您深入分析湖南地区专…

基础HTTP GET接口请求测试

基础HTTP GET接口请求测试操作步骤:打开JMeter,新建测试计划,右键添加“线程组”(线程数1、循环次数1)。线程组下添加“HTTP请求”,服务器名称/IP填写httpbin.org,端口80,请求方法选GET,路径填写/get。添加“…

2025年比较好的设计感保温杯厂家推荐及选择参考

2025年比较好的设计感保温杯厂家推荐及选择参考在当今快节奏的生活中,一款兼具实用性与设计感的保温杯不仅能满足日常饮水需求,更能成为彰显个人品味的时尚单品。2025年,保温杯市场涌现出众多注重设计感与功能性的品…

2025 年自控系统厂家最新推荐榜:综合实力测评出炉,盘点行业权威品牌及选择指南文丘里阀环境监测/智能建筑能源管理自控系统/电力监控系统公司推荐

引言 近期,行业权威协会针对自控系统领域开展综合测评,通过技术实力、产品质量、服务能力、市场口碑四大维度,对近百家厂家进行严格考核,最终筛选出综合表现优异的前十品牌。测评过程中,技术实力维度重点考察工程…

HTTPPOST表单提交接口测试

1. 新建线程组(配置同上),添加“HTTP请求”,服务器httpbin.org,端口80,方法POST,路径/post。2. 勾选“使用表单数据”,在参数栏添加2组数据(如username=test、password=123456)。3. 添加“察看结果树”,运行…

2025年铝合金吊顶推荐供应商新排名,铝合金吊顶实力厂家推荐

2025年建筑装饰行业向绿色化、定制化、一体化转型提速,铝合金吊顶作为室内外装饰的核心材料,其耐用性、美观性、功能性直接影响建筑空间的品质与用户体验。然而当前市场中,铝合金吊顶供应商数量繁杂且质量参差不齐:…

再获殊荣┃OpenCSG荣获专精特新中小企业认定

近日,北京市经济和信息化局正式公布2025年第二季度北京市“专精特新”中小企业名单。北京开放传神科技有限公司(以下简称:OpenCSG)成功入选由国家工信部组织认定的第二季度北京市专精特新中小企业,目前已完成公示…

中国项目管理工具市场迎来智能化变革:Gitee引领技术团队协作新范式

中国项目管理工具市场迎来智能化变革:Gitee引领技术团队协作新范式 在数字化转型浪潮席卷各行各业的当下,项目管理工具正经历着从简单任务管理到全生命周期智能协同的深刻变革。作为中国最大的代码托管平台,Gitee在…

从0到1实现:AI版你画我猜小游戏

全民AI时代,前端er该如何蹭上这波热度?本文将一步步带大家了解前端应该如何结合端侧AI模型,实现一个AI版你画我猜小游戏。作者: vivo 互联网前端团队- Wei Xing全民AI时代,前端er该如何蹭上这波热度?本文将一步步…

能变声的录放音语音芯片WT2003Hx

如果说人的声音是一种独特的"身份证",那么WT2003Hx就像是一位神奇的"变声魔法师",能让你的声音瞬间变成机器人、卡通萌娃,甚至是低沉大叔,听起来是不是很有意思?在开始深入了解这位"魔法…

2025年靠谱的无油烟不粘锅最新TOP厂家排名

2025年靠谱的无油烟不粘锅最新TOP厂家排名无油烟不粘锅市场概述随着现代人对健康烹饪方式的追求,无油烟不粘锅已成为厨房必备用品。2025年,这一市场持续扩大,消费者对产品的安全性、耐用性和环保性能要求越来越高。…

企业级AI知识库革命:开源免费的PandaWiki如何让团队效率飙升300%?

企业级AI知识库革命:开源免费的PandaWiki如何让团队效率飙升300%?你是不是也曾经历过这样的场景:公司新来的实习生怯生生地问:“这个项目的技术规范在哪里?”而你只能尴尬地回答:“呃……可能在某个共享文件夹里…