如何用find命令按文件大小快速查找并美化输出显示

news2024/9/20 22:54:23

背景

在系统中使用find命令查找大于20MB的文件非常简单,但默认情况下,输出结果中只显示文件路径,而不显示文件大小。如下图所示:

如果输出中能够同时显示文件大小,并且对内容进行适当的着色,这将显著提高其可读性和实用性。如下图所示:

为了实现这一目标,我们可以通过把命令封装成脚本,使其不仅显示文件路径和大小,还能够对输出进行着色处理。

实现思路

编写这个脚本的思路是首先确保用户输入查找目录和文件大小限制,然后使用find命令查找符合条件的文件,结合ls命令显示文件大小,最后利用 --color选项对输出进行着色处理,以提高可读性和管理效率。

脚本编写

  1. 默认查找目录和文件大小限制:设定默认的查找目录和文件大小限制。
SEARCH_DIR="/"
SIZE_LIMIT="+10M"
  1. 获取用户输入的查找目录和文件大小限制:通过 read 命令提示用户输入查找目录和文件大小限制,如果用户未输入则使用默认值。
read -p "请输入查找目录 (默认: /): " USER_SEARCH_DIR
read -p "请输入文件大小限制 (例如: +10M 默认: +10M): " USER_SIZE_LIMIT

if [ -n "$USER_SEARCH_DIR" ]; then
    SEARCH_DIR="$USER_SEARCH_DIR"
fi

if [ -n "$USER_SIZE_LIMIT" ]; then
    SIZE_LIMIT="$USER_SIZE_LIMIT"
fi

  1. 查找大于指定大小的文件,显示文件路径和大小,并进行着色处理:使用 find 命令查找符合条件的文件,并使用ls命令显示文件大小,同时利用 --color=auto 选项对输出进行着色处理。
find "$SEARCH_DIR" -xdev -size "$SIZE_LIMIT" -type f -print0 | xargs -0  ls -Ssh1 --color=auto 

ls -Ssh1:

  • -S:按文件大小排序,最大的文件排在最前面。

  • -s:在每个文件之前显示文件的块大小。

  • -h:以人类可读的方式显示文件大小(例如,使用 K、M、G 等单位)

  • -1:每行只显示一个文件。

以下是命令脚本全部内容:

如何使用

  1. 创建脚本文件:将上述脚本保存为 find_large_files.sh

  2. 赋予执行权限:在终端中运行 chmod +x find_large_files.sh

  3. 运行脚本:执行 ./find_large_files.sh,根据提示输入查找目录和文件大小限制。 如下图所示:

总结

通过这个命令脚本,用户不仅可以轻松查找系统中大于指定大小的文件,还能显示文件的大小,并对输出结果进行着色处理,使得输出更加直观和易读。这种增强的可读性和实用性能够帮助用户更高效地管理文件系统

脚本获取方式


上述脚本已经上传上传到gitee,有需要的小伙伴可以自行获取。gitee上的仓库主要是分享一些工作中常用的脚本。小伙伴可以frok或者watch仓库,这样有更新可以及时关注到。

脚本仓库

仓库地址:

https://gitee.com/didiplus/script

推荐阅读


  • 不再担心数据丢失:用rsync打造你的自动化备份解决方案
  • IP地址乱成一团?用Shell一键搞定!
  • 实用技巧,用lsof命令监控tar文件解压进度,简单有效
  • 运维必备:批量实现Linux机器SSH免密登录的自动化脚本
  • 运维小妙招:如何让系统信息随登录自动展现?

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

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

相关文章

“论软件测试中缺陷管理及其应用”写作框架,软考高级论文,系统架构设计师论文

原创范文 软件缺陷指的是计算机软件或程序中存在的某种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷。缺陷的存在会导致软件产品在某种程度上不能满足用户的需要。在目前的软件开发过程中,缺陷是不可避免的。软件测试是发现缺陷的主要手段&#xf…

【信创】udisk2服务异常导致U盘使用中自动移除问题解决

原文链接:【信创】udisk2服务异常导致U盘使用中自动移除问题解决 Hello,大家好啊!今天给大家带来一篇关于在信创终端操作系统上由于udisk2服务异常导致U盘等移动设备在使用中自动移除问题的排查文章。udisk2是一个管理存储设备的服务&#xf…

全球性“微软蓝屏”事件及其对网络安全和系统稳定性的深远影响

近日,一次由微软视窗系统软件更新引发的全球性“微软蓝屏”事件,不仅成为科技领域的热点新闻,更是一次对全球IT基础设施韧性与安全性的深刻检验。这次事件源于美国电脑安全技术公司“众击”提供的一个带有“缺陷”的软件更新,它如…

2024年起重信号司索工(建筑特殊工种)证模拟考试题库及起重信号司索工(建筑特殊工种)理论考试试题

题库来源:安全生产模拟考试一点通公众号小程序 2024年起重信号司索工(建筑特殊工种)证模拟考试题库及起重信号司索工(建筑特殊工种)理论考试试题是由安全生产模拟考试一点通提供,起重信号司索工(建筑特殊工种)证模拟考试题库是根据起重信号司索工(建筑特…

学习硬件测试02:系统框图讲解+时钟树讲解+标准程序框架详解(P47~P49)

一、系统框图讲解 二、时钟树讲解 三、标准程序框架详解

记录|博图中VB脚本和子程序之间的区别?

目录 前言一、VB脚本1. 基本认知2. Function类型中的参数3. 对比看Function和Sub4. 运行VB脚本 更新时间 前言 VB脚本函数与子程序的区别 看到博途中有个VB脚本,感觉和编程相关,想知道下VB脚本能干什么?能否解决生成日志等问题。 一、VB脚本 …

selenium----CSS表达式选择元素

前面我们学习了根据 id、class属性、tag名 选择元素。 如果我们要选择的 元素 没有id、class 属性,或者有些我们不想选择的元素 也有相同的 id、class属性值,怎么办呢?这时候我们通常可以通过 CSS selector 语法选择元素。 选择元素 通过 …

我澄清下,大数据界面虽然有点花,但对趋势的判断还是很准的!

我澄清下,大数据界面虽然有点花,但对趋势的判断还是很准的! 艾斯视觉的观点认为:在这个充满不确定性的世界里,大数据就像一位智者,透过那些令人眼花缭乱的界面,总能以它独到的洞察力&#xff0…

大学计算机专业主要课程及概要介绍

大学计算机专业主要课程及概要介绍 大学计算机专业是一门涵盖广泛领域的学科,旨在培养学生在计算机科学与技术方面的理论知识与实践能力。该专业课程设置丰富多样,涵盖了从基础理论到高级应用的多个方面。以下是一些主要的课程及其概要介绍:…

C语言的周末小练习

周末小练习&#xff1a; 1.确认基础类型所占用的内存空间。 #include <stdio.h>int main() {printf("char: %u byte(s)\n", sizeof(char));printf("short: %u byte(s)\n", sizeof(short));printf("int: %u byte(s)\n", sizeof(int));pr…

【Maven学习】-1. 简介

文章目录 Maven学习1. 简介1.1 介绍1.2 安装1.2.1 下载1.2.2 安装maven1.2.3 配置镜像源(加快下载)1.2.4 IDEA配置maven 1.3 基于IDEA进行Maven工程构建Maven工程的GAVP创建Maven工程项目结构说明 1.4 Maven生命周期1.4.1 介绍1.4.2 命令讲解编译(mvn compile)删除(mvn clean)测…

26 Python序列结构

Python 中常用的序列结构有列表、元组、字典、字符串、集合等。 从是否有序这个角度看&#xff0c;Python 序列可以分为有序序列和无序序列&#xff1b;从是否可变来看&#xff0c;Python 序列可以分为可变序列和不可变序列两大类。 生成器对象和 range、map、enumerate、filte…

libtorch学习历程(1)环境搭建:VS+libtorch

1. 开发环境 Win11VS 2022 CommunityRTX4060pytorch 2.4.0cu121&#xff08;事先安装好&#xff09;libtorch 2.4.0cu121 release版opencv 4.10.0 2.软件下载 2.1 VS 直接去官网下载即可&#xff0c;最好是2017版本之后&#xff0c;需要选择C的桌面开发。 2.1 opencv 下…

嵌入式人工智能(30-基于树莓派4B的气体传感器-MQ系列烟雾、酒精、空气质量等传感器)

1、气体传感器 气体传感器是一种用于检测和测量空气中各种气体浓度的设备。它们通常使用化学反应、光学原理或电化学原理来检测气体&#xff0c;并通过输出电信号或其他输出形式来指示测量结果。 气体传感器在许多领域都有应用&#xff0c;包括工业安全、环境监测、室内空气质…

photoshop学习笔记——移动工具

移动工具&#xff0c;可以对图层进行移动&#xff0c;快捷键 V 使用的素材已经放上了&#xff0c;直接下载即可 按住ctrl 可以自动选取&#xff0c;鼠标点击哪个对象&#xff0c;自动选中哪个图层 按住 shift 校正角度&#xff08;只能沿着直线移动&#xff09; 按住 alt 拖…

第 1 章 预备知识

1、C简介 C继承了 C 语言高效、简洁、快速和可移植性的传统。C面向对象的特性带来了全新的编程方法&#xff0c;这种方法是为应付复杂程度不断提高的现代编程任务而设计的。 C的模板特性提供了另一种全新的编程方法——泛型编程。 C融合了 3 种不同的编程方式&#xff1a;C …

请你谈谈:spring bean的生命周期 - 阶段5:BeanPostProcessor前置处理-自定义初始化逻辑-BeanPostProcess后置处理

BeanPostProcessor的postProcessBeforeInitialization方法是在bean的依赖注入&#xff08;即属性填充&#xff09;完成后&#xff0c;但在bean的初始化回调&#xff08;如PostConstruct注解的方法或InitializingBean接口的afterPropertiesSet方法&#xff09;之前被调用的。 具…

大模型算法备案各项要求详细说明

2024年3月1日&#xff0c;我国通过了《生成式人工智能服务安全基本要求》&#xff08;以下简称《AIGC安全要求》&#xff09;&#xff0c;这是目前我国第一部有关AIGC服务安全性方面的技术性指导文件&#xff0c;对语料安全、模型安全、安全措施、词库/题库要求、安全评估等方面…

Windows按钮快捷键解释(有摸鱼技巧!):(个人尝试)另外警告:仅代表UP建议,不一定适用于所有电脑!谨慎尝试哦~好好工作!杜绝摸鱼!引以为戒!

哈喽&#xff01;各位好&#xff0c;我们来一期电脑专题的&#xff08;快捷键&#xff09;第一次尝试&#xff0c;你们看看吧&#xff01; 警告&#xff1a;仅代表UP建议&#xff0c;不一定适用于所有电脑&#xff01;谨慎尝试哦~好好工作&#xff01;杜绝摸鱼&#xff01; 一…

HarmonyOs之 路由简单跳转

Navigation路由相关的操作都是基于页面栈NavPathStack提供的方法进行&#xff0c;每个Navigation都需要创建并传入一个NavPathStack对象&#xff0c;用于管理页面。主要涉及页面跳转、页面返回、页面替换、页面删除、参数获取、路由拦截等功能。 Entry Component struct Index …