Linux 文件按照大小排序

在linux中显示文件大小的时候,通常的做法是使用“ls -l”,显示的大小是文件的字节大小。
但是,如果文件比较大的话,显示起来不是特别易读,这个时候,可以使用“ls -lh”,就可以使用比较接近文件大小的单位显示文件的大小,如下:

  1. [billing_dx@bmcs1 bin]$ ls -lh  
  2. total 565M  
  3. -rwxr-xr-x 1 billing_dx BILLING 1.1M Mar 10 18:56 AcctMgrService  
  4. -rw-r--r-- 1 billing_dx BILLING  364 Mar 10 18:59 AcctMgrService.conf  
  5. -rw------- 1 billing_dx BILLING  11G Mar 13 18:37 core.22836  
  6. -rw-r--r-- 1 billing_dx BILLING  410 Mar 13 17:38 dll_info.conf  
  7. -rwxr-xr-x 1 billing_dx BILLING   39 Mar 10 18:57 go  


参考:

3 Ways to Sort files by Size in Linux - howtouselinux

使用“-h”参数时,会根据文件的大小选择显示的单位是“K”、“M”还是“G”。如果希望指定显示的单位,可以使用“--block-size”参数,如下:

[billing_dx@bmcs1 bin]$ ls -l  

total 577724  

-rwxr-xr-x 1 billing_dx BILLING     1103862 Mar 10 18:56 AcctMgrService  

-rw-r--r-- 1 billing_dx BILLING         364 Mar 10 18:59 AcctMgrService.conf  

-rw------- 1 billing_dx BILLING 10947788800 Mar 13 18:37 core.22836  

-rw-r--r-- 1 billing_dx BILLING         410 Mar 13 17:38 dll_info.conf  

-rwxr-xr-x 1 billing_dx BILLING          39 Mar 10 18:57 go  

  

[billing_dx@bmcs1 bin]$ ls -l --block-size=k   

total 577724K  

-rwxr-xr-x 1 billing_dx BILLING     1078K Mar 10 18:56 AcctMgrService  

-rw-r--r-- 1 billing_dx BILLING        1K Mar 10 18:59 AcctMgrService.conf  

-rw------- 1 billing_dx BILLING 10691200K Mar 13 18:37 core.22836  

-rw-r--r-- 1 billing_dx BILLING        1K Mar 13 17:38 dll_info.conf  

-rwxr-xr-x 1 billing_dx BILLING        1K Mar 10 18:57 go  

  

[billing_dx@bmcs1 bin]$ ls -l --block-size=m  

total 565M  

-rwxr-xr-x 1 billing_dx BILLING     2M Mar 10 18:56 AcctMgrService  

-rw-r--r-- 1 billing_dx BILLING     1M Mar 10 18:59 AcctMgrService.conf  

-rw------- 1 billing_dx BILLING 10441M Mar 13 18:37 core.22836  

-rw-r--r-- 1 billing_dx BILLING     1M Mar 13 17:38 dll_info.conf  

-rwxr-xr-x 1 billing_dx BILLING     1M Mar 10 18:57 go  

  

[billing_dx@bmcs1 bin]$ ls -l --block-size=g  

total 1G  

-rwxr-xr-x 1 billing_dx BILLING  1G Mar 10 18:56 AcctMgrService  

-rw-r--r-- 1 billing_dx BILLING  1G Mar 10 18:59 AcctMgrService.conf  

-rw------- 1 billing_dx BILLING 11G Mar 13 18:37 core.22836  

-rw-r--r-- 1 billing_dx BILLING  1G Mar 13 17:38 dll_info.conf  

-rwxr-xr-x 1 billing_dx BILLING  1G Mar 10 18:57 go  




同哦过对比可以看到,使用  不同的单位显示的时候,使用的是进一法,所以一个1k的东西,使用G为单位显示的是,会显示为“1G”。所以,还是使用“-h”显示起来,更符合人的习惯。
下面是ls显示的相关描述:

ls -l|grep "^-"| wc -l)查看某个文件夹下文件的个数。
(ls -lR|grep "^-"| wc -l)查看某个文件夹下文件的个数,包括子文件夹下的文件个数。
(ls -l|grep "^d"| wc -l)查看某个文件夹下文件夹的个数。
(ls -lR|grep "^d"| wc -l)查看某个文件夹下文件夹的个数,包括子文件夹下的文件夹个数。
(ls -l| wc -l)查看文件夹下所有的文件和文件夹。也就是统计ls -l命令所输出的行数。


说明:

ls -l 
长列表输出该目录下文件信息(注意这里的文件,不同于一般的文件,可能是目录、链接、设备文件等)


grep "^-"


这里将长列表输出信息过滤一部分,只保留一般文件,如果只保留目录就是 ^d

wc -l

 
统计输出信息的行数,因为已经过滤得只剩一般文件了,所以统计结果就是一般文件信息的行数,又由于


一行信息对应一个文件,所以也就是文件的个数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值