当前位置: 首页 > news >正文

Linux基础命令-du查看文件的大小

文章目录

du

命令介绍

语法格式

基本参数

参考实例

1)以人类可读形式显示指定的文件大小

2)显示当前目录下所有文件大小

3)只显示目录的大小

4)显示根下哪个目录文件最大

5)显示所有文件的大小

6)只显示目录下的文件,不显示目录下的子目录

ll -h与du -h命令的区别 

命令总结

du

命令介绍

先看下帮助文档里的含义

NAME
       du - estimate file space usage

 du(Disk Usage)命令的功能是查看文件或目录的大小,默认以kb单位显示文件的大小,如果是目录,则会显示目录下各个文件的容量以及目录的总容量。

语法格式

du命令的语法格式是:du 【参数】【文件】

SYNOPSIS
       du [OPTION]... [FILE]...
       du [OPTION]... --files0-from=F

下面来看下命令的参数有哪些。

基本参数

-a列出目录下所有子目录或者文件的大小
-h以人类可读的容量格式显示
-m以MB的单位列出容量大小
-k以KB的单位列出容量大小
-s只显示目录的容量大小,并不显示其下文件容量
-S只显示目录和目录下的文件容量,不显示目录下子目录的容量

参考实例

1)以人类可读形式显示指定的文件大小

左边显示的是文件容量大小,右边显示的是文件名 

[root@localhost ~]# du -h anaconda-ks.cfg 
4.0K	anaconda-ks.cfg

2)显示当前目录下所有文件大小

直接输入 du 没有加任何选项时,则 du 会分析当前所在目录里的子目录所占用的硬盘空间;包括隐藏文件

[root@localhost /]# du | wc -l
27459
[root@localhost ~]# du | wc -l
104

3)只显示目录的大小

可以指定目录,加了-s参数只会显示目录本身的容量大小 

[root@localhost ~]# du -sh /etc
42M	/etc

4)显示根下哪个目录文件最大

先查看根目录下的目录,列出以MB为单位的容量,再通过管道符进行排序文件大小

[root@localhost /]# du -sm /* | sort -nur
4561	/run
3674	/usr
504	/var
122	/boot
42	/etc
4	/root
1	/home
0	/bin

5)显示所有文件的大小

显示所有的文件,可以看到只显示了10个文件的容量大小,若全部显示,可以使用wc -l 可以看到文件有这么多。 

[root@localhost ~]# du -ah | head 
4.0K	./.bash_logout
4.0K	./.bash_profile
4.0K	./.bashrc
4.0K	./.cshrc
4.0K	./.tcshrc
4.0K	./anaconda-ks.cfg
4.0K	./.bash_history
4.0K	./.cache/abrt/lastnotification
4.0K	./.cache/abrt/applet_dirlist
8.0K	./.cache/abrt
[root@localhost ~]# du -a | wc -l
167

6)只显示目录下的文件,不显示目录下的子目录

使用-S的命令结果与du命令不加-S的结果是一样的,其实都是显示目录和其下的文件。 

[root@localhost ~]# du -S /etc | wc -l
746
[root@localhost ~]# du /etc | wc -l
746

ll -h与du -h命令的区别 

不同命令显示文件,为什么会出现文件大小不一样

[root@localhost ~]# ll -h anaconda-ks.cfg 
-rw-------. 1 root root 1.4K 2月   8 00:02 anaconda-ks.cfg[root@localhost ~]# du -h anaconda-ks.cfg 
4.0K	anaconda-ks.cfg

通过使用ll -h 文件与du -sh文件的结果可以发现,明明是同一个文件,但是显示的容量却不相同。

其实这一切都要从block块讲起。 

众所周知,磁盘中最小的存储单位是扇区,而每个扇区默认是存储512字节,既是0.5KB);而文件系统默认会一次性读取多个扇区,即一次性读取一个“块”也就是block,一个块的大小常见的是4KB,即连续八个扇区(sector)组成一个 block。

那么写入一个文件的时候,无论这个文件多小,都会占用1个block块。

再回到命令显示的文件大小,可以看出du -h这个命令显示的是磁盘的占用空间,而ll -h显示的是文件的实际大小。

附上一张图

windows里文件有实际大小和占用空间大小。 

命令总结

        du命令还是挺有意思的,用来查看文件的大小也好,目录的大小也好,都是个不错的命令,若觉得以上内容还行的,可以点赞支持一下!

相关文章:

Linux基础命令-du查看文件的大小

文章目录 du 命令介绍 语法格式 基本参数 参考实例 1)以人类可读形式显示指定的文件大小 2)显示当前目录下所有文件大小 3)只显示目录的大小 4)显示根下哪个目录文件最大 5)显示所有文件的大小 6&#xff0…...

文献计量分析方法:Citespace安装教程

Citespace是一款由陈超美教授开发的可用于海量文献可视化分析的软件,可对Web of Science,Scopus,Pubmed,CNKI等数据库的海量文献进行主题、关键词,作者单位、合作网络,期刊、发表时间,文献被引等…...

MVI 架构更佳实践:支持 LiveData 属性监听

前言MVI架构为了解决MVVM在逻辑复杂时需要写多个LiveData(可变不可变)的问题,使用ViewState对State集中管理,只需要订阅一个 ViewState 便可获取页面的所有状态通过集中管理ViewState,只需对外暴露一个LiveData,解决了MVVM模式下LiveData膨胀…...

LeetCode438 找到字符串中所有字母异位词 带输入和输出

题目: 给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。 异位词 指由相同字母重排列形成的字符串(包括相同的字符串)。 示例 1: 输入: s “cbaebabacd”, …...

ACSC 2023 比赛复现

Admin Dashboard 在 index.php 中可以看到需要访问者是 admin 权限,才可以看到 flag。 report.php 中可以让 admin bot 访问我们输入的 url,那么也就是说可以访问 addadmin.php 添加用户。 在 addadmin.php 中可以添加 admin 用户,但是需…...

【Linux驱动开发100问】什么是模块?如何编写和使用模块?

🥇今日学习目标:什么是Linux内核? 🤵‍♂️ 创作者:JamesBin ⏰预计时间:10分钟 🎉个人主页:嵌入式悦翔园个人主页 🍁专栏介绍:Linux驱动开发100问 什么是模块…...

Android 9.0 Recent列表不显示某个app

1.概述 在9.0的系统产品rom定制化开发中,在一些产品定制化需求中,也是有很多重要的功能实现的,比如在某些app的开发中 由于不想被杀掉,所以就不想出现在recent的列表中,因此就需要从recent的列表中,去掉这个app的显示,然后这里有 两种方法实现这个功能,一种是在app中就…...

深度学习之卷积神经网络学习笔记一

1. 引言深度学习是一系列算法的统称,包括卷积神经网络(CNN),循环神经网络(RNN),自编码器(AE),深度置信网络(DBN),生成对抗…...

黑盒测试的常用方法

这里我们先设置一个示例,后面的文章中会根据示例来进行讲解 假设有一个程序是判断一个整形数字是否属于1-100 目录 1.等价类法 2.边界值法 3.判定表法 4.场景设计法 5.错误猜测法 6.正交法 1.等价类法 概念:系统性的确定要输入的测试条件的方法可以看出概念非常抽象,那…...

操作系统笔记-第一章

文章目录操作系统概述1. 操作系统的概念1.1 操作系统的地位1.2 操作系统的作用1.3 操作系统的定义2. 操作系统的历史2.1 操作系统的产生2.1.1 手动操作阶段(20世纪40年代)2.1.2 批处理阶段(20世纪50年代)2.1.3 执行系统阶段&#…...

daillist

daillist #重要说明: #[1]任意两个配置参数之间必须以空格隔开,否则,拨号脚本无法识别。 #[2]Info格式说明:厂商名简称_制式_频段 #VID #PID #PORT_M #PORT_A #PORT_G #script_*99# #script_#777 #Info 05c6 9025 /dev/ttyUSB1 /dev/ttyUSB2 …...

vue中render函数的作用和参数(vue2中render函数用法)

render 函数是 Vue2.x 新增的一个函数、主要用来提升节点的性能,它是基于 JavaScript 计算。使用 Render 函数将 Template 里面的节点解析成虚拟的 Dom 。Vue 推荐在绝大多数情况下使用模板来创建 HTML。然而在一些场景中,需要 JavaScript 的完全编程能力…...

基于Istio的高级流量管理二(Envoy流量劫持、Istio架构、高级流量管理)

文章目录一、Envoy流量劫持机制(Iptables规则流转)1、流量出向劫持流程(1)envoy怎样劫持入向流量?(2)Envoy劫持到流量之后,干什么?(查询目的地)&a…...

Sharding-Springboot-mybatis-plus整合(三)-inline策略

Sharding-Springboot-mybatis-plus整合(三) 1.简介 本节目标,使用SpringBoot整合Sharding和Mybatis-Plus验证上节分片策略 从配置文件上看策略包括( inline、standard、complex、hint) 环境搭建以inline策略演示 …...

编码的基本概念

本专栏包含信息论与编码的核心知识,按知识点组织,可作为教学或学习的参考。markdown版本已归档至【Github仓库:information-theory】,需要的朋友们自取。或者公众号【AIShareLab】回复 信息论 也可获取。 文章目录信源编码分类前缀…...

函数指针与指针函数的区别

目录:一、函数指针1 函数类型2 函数指针(指向函数的指针)3 函数指针数组二.函数指针和指针函数比较1 定义不同2 写法不同3.用法不同三.函数指针做函数参数(回调函数)1 利用回调函数实现打印任意类型数据2 提供能够打印任意类型数组函数3 利用回调函数 提供查找功能四…...

死锁的四个必要条件以及如何避免死锁

死锁的四个必要条件以及如何避免死锁 一.什么是死锁?二.死锁的四个必要条件 1.互斥条件:2.请求与保持条件:3.不剥夺条件:4.循环等待条件: 三.如何避免死锁 1.破坏请求保持条件2.破坏不剥夺条件3.破坏循环等待条件 死锁的四个必要条件以及如…...

浏览器多线程到事件循环机制

浏览器与js运行机制 进程与线程 进程 进程是CPU分配资源的最小单位,它是一个可以自己独立运行且拥有自己资源空间的任务程序;包括程序以及程序所使用的内存及系统资源 线程 线程是CPU调度的最小单位,它就是程序中的一个执行流&#xff1…...

Lambda表达式的本质

一直想写一篇文章,来总结lambda表达式,但是之前感觉总结的不是特别到位,现在看了几篇文章和视频后,感觉对lambda表达式有了比较深刻的认识,现在进行记录总结如下: lambda表达式又叫做匿名函数,…...

类的加载过程(生命周期)

类的加载过程(生命周期) 一、装载:通过一个类的全限定名获取定义此类的二进制字节流将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构在内存中生成一个代表这个类的java.lang.Class对象(将字节码加载到内存中),作为…...

零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?

一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...

【杂谈】-递归进化:人工智能的自我改进与监管挑战

递归进化:人工智能的自我改进与监管挑战 文章目录 递归进化:人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管?3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...

HTML 列表、表格、表单

1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...

相机从app启动流程

一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践

6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...

浅谈不同二分算法的查找情况

二分算法原理比较简单,但是实际的算法模板却有很多,这一切都源于二分查找问题中的复杂情况和二分算法的边界处理,以下是博主对一些二分算法查找的情况分析。 需要说明的是,以下二分算法都是基于有序序列为升序有序的情况&#xf…...

Golang——6、指针和结构体

指针和结构体 1、指针1.1、指针地址和指针类型1.2、指针取值1.3、new和make 2、结构体2.1、type关键字的使用2.2、结构体的定义和初始化2.3、结构体方法和接收者2.4、给任意类型添加方法2.5、结构体的匿名字段2.6、嵌套结构体2.7、嵌套匿名结构体2.8、结构体的继承 3、结构体与…...

省略号和可变参数模板

本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...

从 GreenPlum 到镜舟数据库:杭银消费金融湖仓一体转型实践

作者&#xff1a;吴岐诗&#xff0c;杭银消费金融大数据应用开发工程师 本文整理自杭银消费金融大数据应用开发工程师在StarRocks Summit Asia 2024的分享 引言&#xff1a;融合数据湖与数仓的创新之路 在数字金融时代&#xff0c;数据已成为金融机构的核心竞争力。杭银消费金…...

人工智能--安全大模型训练计划:基于Fine-tuning + LLM Agent

安全大模型训练计划&#xff1a;基于Fine-tuning LLM Agent 1. 构建高质量安全数据集 目标&#xff1a;为安全大模型创建高质量、去偏、符合伦理的训练数据集&#xff0c;涵盖安全相关任务&#xff08;如有害内容检测、隐私保护、道德推理等&#xff09;。 1.1 数据收集 描…...