Linux 下获取当前路径所有目录大小并排序

日常工作中,会遇到一堆目录,如何查看各目录大小呢,大家都知道du命令

先列出前10条

[email protected] /scripts]#du -sh * | head
120K	2017031510
248K	2017031514
23M	2017031515
664K	2017031516
656K	2017031517
2.0M	2017031518
68K	2017031519
884K	2017031520
580K	2017031521
60K	2017031609

再排序

[email protected] /scripts]#du -sh * | sort -nr | head
1020K	2017062120
1008K	2017033016
1000K	2017032221
988K	2017052420
988K	2017033118
988K	2017031912
98K	2017032810
80K	2017051114
76M	2017050918
68K	2017052010

是不是乱了?这是du命令中-h导致的,先计算了大小,但是在排序的时候,只针对数字,不会识别后面的K 和 M ,优化下

[email protected] /scripts]#du -s * | sort -nr | head | awk ‘{printf"%sM\n",$1/1024 }‘
125.906M
66.4023M
65.8516M
63.5117M
53.5859M
53.125M
51.4805M
47.8945M
46.8867M
44.25M

OK了

时间: 2024-10-30 13:40:43

Linux 下获取当前路径所有目录大小并排序的相关文章

Linux下查看文件大小和目录大小以及目录下文件的大小

在linux中经常会查看文件大小,通常用的命令du: 该命令详细解释如下: [[email protected] logs]$ du --help 用法:du [选项]... [文件]... 或:du [选项]... --files0-from=F 计算每个文件的磁盘用量,目录则取总用量. 长选项必须使用的参数对于短选项时也是必需使用的. -a, --all             输出所有文件的磁盘用量,不仅仅是目录 --apparent-size   显示表面用量,而并非是磁盘用量:虽然表面

Windows和Linux下获取当前可执行文件路径和工作目录

1.Windows下的获取当前可执行文件的路径和当前工程目录. (1)获取当前可执行文件路径: #include <shlwapi.h> #pragma comment(lib, "shlwapi.lib") wchar_t szExePath[MAX_PATH] = {0}; GetModuleFileNameW(NULL, szExePath, sizeof(szExePath)); PathRemoveFileSpecW(szExePath); (2)如果想获取当前工

linux下获取硬盘使用情况

1.前言 在嵌入式设备中,硬盘空间非常有限,在涉及到经常写日志的进程时候,需要考虑日志的大小和删除,不然很快就硬盘写满,导致日志程序崩溃.为了捕获硬盘写满的异常场景,我们需要在写日志过程中判断硬盘空间的使用情况,根据硬盘的使用情况,就可以判断是否写满了.如果将要写满了,就给出警告.这样就可以避免程序崩溃.首先看一下linux获取硬盘和目录大小的命令,最后总结一下statfs结构和函数. 2.df命令 Linux下可以用df命令获取硬盘的使用情况,通过man可以获取df命令的详细情况.df命令经常

Linux下获取和设置IP

在Linux下获取关于IP和网关的操作:重点是对struct ifreq 的操作. 那么进入目录/usr/include/net/if.h下看查找struct ifreq结构体. /* Interface request structure used for socket ioctl's. All interface ioctl's must have parameter definitions which begin with ifr_name. The remainder may be in

[老生常谈] Linux 下读取windows共享目录

依然,废话不多说直接给命令 sudo mount -tcifs -o username=YOURDOMAIN\\username,passwd='mypassword' //10.123.123.123/temp/svrshare $HOME/mymnt cd mymnt cp temp.txt $HOME cd ~ chmod 777 temp.txt 简单讲述一下以上什么意思,第一条就是将//10.123.123.123/temp/svrshare共享目录加载到你本机linux的挂载上去即你

Linux下获取arm的交叉编译工具链

转载请注明文章:Linux下获取arm的交叉编译工具链 出处:多客博图 这里介绍,Linux下获取arm的交叉编译工具链,比如arm-linux-gnueabihf-gcc.arm-linux-gneabihf-gcc等. 前言 这里有一个专门的说法: “arm-linux-gnueabihf-gcc是由 Linaro 公司基于GCC推出的的ARM交叉编译工具.可用于交叉编译ARM系统中所有环节的代码,包括裸机程序.u-boot.Linux kernel.filesystem和App应用程序.使

在Windows及Linux下获取毫秒级运行时间的方法

在Windows下获取毫秒级运行时间的方法 头文件:<Windows.h> 函数原型: /*获取时钟频率,保存在结构LARGE_INTEGER中***/ WINBASEAPI BOOL WINAPI QueryPerformanceFrequency( _Out_ LARGE_INTEGER * lpFrequency ); /*获取从某个时间点开始的时钟周期数,保存在结构LARGE_INTEGER中**/ WINBASEAPI BOOL WINAPI QueryPerformanceFreq

Linux下挂载Windows共享目录

$ sudo mount.cifs //windows-ip/shared  /media/ -o user=username password=password 该命令挂载Windows下的shared共享目录到本地/media目录下. Windows的用户名是username, 密码是password (作相应的修改) 这里的CIFS(Common Internet File System)协议是SMB协议的后续版本. Linux下挂载Windows共享目录,布布扣,bubuko.com

如何在windows下和linux下获取文件(如exe文件)的详细信息和属性

程序员都很懒,你懂的! 最近在项目开发中,由cs开发的exe的程序,需要自动升级,该exe程序放在linux下,自动升级时检测不到该exe程序的版本号信息,但是我们客户端的exe程序需要获取服务器上新程序的版本号信息.最后由我用java实现linux上exe文件的版本号读取功能.下面是详细代码: package com.herman.utils; import java.io.File; import java.io.FileNotFoundException; import java.io.I