• df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。  du可以查看文件及文件夹的大小。  两者配合使用,非常有效。比如用df查看哪个一级目录过大,然后用df查看文件夹或文件大小...

    df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。
        du可以查看文件及文件夹的大小

        两者配合使用,非常有效。比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结。

    [work@37-14-3 log]$ pwd
    /opt/scf/log
    [work@37-14-3 log]$ du -h
    44K ./cdnservice
    8.6M ./commentscf
    4.0G ./geolocal
    2.6G ./pns
    81M ./smsplatform
    335M ./ipservice
    3.5G ./wechatscf
    92G ./smsservice
    102G
     

    2.看内存使用情况,用free命令
      
    total       used       free     shared    buffers     cached
    Mem:         73728      70940       2788          0          0      64840
    -/+ buffers/cache:       6100      67628
    Swap:        16384       4500      11884
    这些信息的说明大致如下: 
    其中第一行用全局角度描述系统使用的内存状况: 
    total——总物理内存 
    used——已使用内存,一般情况这个值会比较大,因为这个值包括了cache+应用程序使用的内存 
    free——完全未被使用的内存 
    shared——应用程序共享内存 
    buffers——缓存,主要用于目录方面,inode值等(ls大目录可看到这个值增加) 
    cached——缓存,用于已打开的文件 

    free命令也可以使用”-m” 参数,这样显示的内存信息是用MB算,而不是KB,大内存情况下,这样更直观。

    free -m
    -----------
                 total       used       free     shared    buffers     cached
    Mem:            72         69          2          0          0         63
    -/+ buffers/cache:          5         66
    Swap:           16          4         11
    展开全文
  • linux获取文件大小

    ##stat命令

    stat filepath

    xanarry@ThinkPad:/$ stat ~/Downloads/jdk-8u60-linux-x64.tar.gz
      File: '/home/xanarry/Downloads/jdk-8u60-linux-x64.tar.gz'
      Size: 181238643       Blocks: 353984     IO Block: 4096   regular file
    Device: 808h/2056d      Inode: 261742      Links: 1
    Access: (0666/-rw-rw-rw-)  Uid: ( 1000/ xanarry)   Gid: ( 1000/ xanarry)
    Access: 2017-02-01 17:36:43.177892508 +0800
    Modify: 2015-10-02 12:43:29.853291000 +0800
    Change: 2016-12-26 23:33:34.619480450 +0800
     Birth: -
    

    ##wc命令

    wc -c filename 参数-c表示统计字符, 因为一个字符一个字节, 所以这样得到字节数

    xanarry@ThinkPad:/$ wc -c  ~/Downloads/jdk-8u60-linux-x64.tar.gz
    181238643 /home/xanarry/Downloads/jdk-8u60-linux-x64.tar.gz
    

    ##du命令

    du -b filepath 参数-b表示以字节计数

    xanarry@ThinkPad:/$ du -b  ~/Downloads/jdk-8u60-linux-x64.tar.gz
    181238643       /home/xanarry/Downloads/jdk-8u60-linux-x64.tar.gz
    

    或者

    du -h filepath 直接得出人好识别的文件大小

    xanarry@ThinkPad:/$ du -h  ~/Downloads/jdk-8u60-linux-x64.tar.gz
    173M    /home/xanarry/Downloads/jdk-8u60-linux-x64.tar.gz
    

    如果对一个目录执行dudu会递归列出目录中的所有文件,并显示其大小,同时也会显示目录中所有文件的大小。假如我们想知道一个目录下所有文件占用空间的总大小,执行:

    du 目标目录 -sh
    # -s, --summarize       display only a total for each argument
    # -h, --human-readable  print sizes in human readable format (e.g., 1K 234M 2G)
    

    ##ls命令

    ls -l filepath 第五列为文件字节数

    xanarry@ThinkPad:/$ ls -l  ~/Downloads/jdk-8u60-linux-x64.tar.gz
    -rw-rw-rw- 1 xanarry xanarry 181238643 10月  2  2015 /home/xanarry/Downloads/jdk-8u60-linux-x64.tar.gz
    

    ls -h filepath h表示human, 加-h参数得到人好读的文件大小

    xanarry@ThinkPad:/$ ls -lh  ~/Downloads/jdk-8u60-linux-x64.tar.gz
    -rw-rw-rw- 1 xanarry xanarry 173M 10月  2  2015 /home/xanarry/Downloads/jdk-8u60-linux-x64.tar.gz
    
    展开全文
  • linux判断文件大小

    2019-07-03 15:04:21
    第一条code ll -s | tail -n +2 | awk '$1 >= 10 {print $1,$10 "容量大于10"} $1 <= 9 {print $1,$10 "容量小于9"}'  第二条code ...= 10 {print $1,$2 "容量大于10"} $1 <= 9 {pri...

    第一条code

    ll -s | tail -n +2 | awk '$1 >= 10 {print $1,$10 "容量大于10"} $1 <= 9 {print $1,$10 "容量小于9"}'  

    第二条code

    ls -s | tail -n +2 | awk '$1 >= 10 {print $1,$2 "容量大于10"} $1 <= 9 {print $1,$2 "容量小于9"}'

    效果都一样。

    这里有个问题,tail -n +2读取的是ls或者ll后的第二行, 由于第一行会产生total,不过滤会导致读取出错。

    而加了tail以后直接判断第一列

    结果

     

     

     

    做个笔记。

    转载于:https://www.cnblogs.com/chenglee/p/8985850.html

    展开全文
  • linux中查看文件大小

    2018-07-13 11:18:16
    ls -lht看文件大小du -sh *看文件大小du -sh /home 看对应目录下文件大小 
    ls -lht看文件大小
    du -sh *看文件大小
    du -sh /home     看对应目录下文件大小 
    展开全文
  • linux中显示文件大小的时候,通常的做法是使用“ls -l”,显示的大小文件的字节大小。但是,如果文件比较大的话,显示起来不是特别易读,这个时候,可以使用“ls -lh”,就可以使用比较接近文件大小的单位显示...
    在linux中显示文件大小的时候,通常的做法是使用“ls -l”,显示的大小是文件的字节大小。
    但是,如果文件比较大的话,显示起来不是特别易读,这个时候,可以使用“ls -lh”,就可以使用比较接近文件大小的单位显示文件的大小,如下:
    [plain] view plain copy
    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  



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

    [plain] view plain copy
    1. [billing_dx@bmcs1 bin]$ ls -l  
    2. total 577724  
    3. -rwxr-xr-x 1 billing_dx BILLING     1103862 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 10947788800 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  
    8.   
    9. [billing_dx@bmcs1 bin]$ ls -l --block-size=k   
    10. total 577724K  
    11. -rwxr-xr-x 1 billing_dx BILLING     1078K Mar 10 18:56 AcctMgrService  
    12. -rw-r--r-- 1 billing_dx BILLING        1K Mar 10 18:59 AcctMgrService.conf  
    13. -rw------- 1 billing_dx BILLING 10691200K Mar 13 18:37 core.22836  
    14. -rw-r--r-- 1 billing_dx BILLING        1K Mar 13 17:38 dll_info.conf  
    15. -rwxr-xr-x 1 billing_dx BILLING        1K Mar 10 18:57 go  
    16.   
    17. [billing_dx@bmcs1 bin]$ ls -l --block-size=m  
    18. total 565M  
    19. -rwxr-xr-x 1 billing_dx BILLING     2M Mar 10 18:56 AcctMgrService  
    20. -rw-r--r-- 1 billing_dx BILLING     1M Mar 10 18:59 AcctMgrService.conf  
    21. -rw------- 1 billing_dx BILLING 10441M Mar 13 18:37 core.22836  
    22. -rw-r--r-- 1 billing_dx BILLING     1M Mar 13 17:38 dll_info.conf  
    23. -rwxr-xr-x 1 billing_dx BILLING     1M Mar 10 18:57 go  
    24.   
    25. [billing_dx@bmcs1 bin]$ ls -l --block-size=g  
    26. total 1G  
    27. -rwxr-xr-x 1 billing_dx BILLING  1G Mar 10 18:56 AcctMgrService  
    28. -rw-r--r-- 1 billing_dx BILLING  1G Mar 10 18:59 AcctMgrService.conf  
    29. -rw------- 1 billing_dx BILLING 11G Mar 13 18:37 core.22836  
    30. -rw-r--r-- 1 billing_dx BILLING  1G Mar 13 17:38 dll_info.conf  
    31. -rwxr-xr-x 1 billing_dx BILLING  1G Mar 10 18:57 go  



    同哦过对比可以看到,使用  不同的单位显示的时候,使用的是进一法,所以一个1k的东西,使用G为单位显示的是,会显示为“1G”。所以,还是使用“-h”显示起来,更符合人的习惯。
    下面是ls显示的相关描述:
    [plain] view plain copy
    1. billing_dx@bmcs1 bin]$ man ls  
    2. LS(1)                            User Commands                           LS(1)  
    3.   
    4.   
    5. NAME  
    6.    ls - list directory contents  
    7.   
    8.   
    9. SYNOPSIS  
    10.    ls [OPTION]... [FILE]...  
    11.   
    12.   
    13. DESCRIPTION  
    14.    List  information  about the FILEs (the current directory by default).  Sort entries alphabetically if  
    15.    none of -cftuvSUX nor --sort.  
    16.   
    17.   
    18.    Mandatory arguments to long options are mandatory for short options too.  
    19.   
    20.   
    21.    -h, --human-readable  
    22.           with -l, print sizes in human readable format (e.g., 1K 234M 2G)  
    23.   
    24.   
    25.    -k     like --block-size=1K  
    26.   
    27.   
    28.    -l     use a long listing format  
    29.   
    30.   
    31.    --block-size=SIZE  
    32.           use SIZE-byte blocks.  See SIZE format below  
    33.   
    34.   
    35.    SIZE  may  be  (or  may  be  an  integer optionally followed by) one of following: KB 1000, K 1024, MB  
    36.    1000*1000, M 1024*1024, and so on for G, T, P, E, Z, Y.  

    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

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


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

    展开全文
  • linux c 获取文件大小

    2018-05-16 17:55:50
    问题描述:在使用c语言获取文件大小的时候发现有的文件大小可以正确获取,有的不能,以下为初始代码unsigned long get_file_size(const char *filename) { unsigned long size; FILE* fp = fopen( filename, &...
  • 1Linux下查看文件和文件夹大小 2 删除系统日志等 场景:在sts执行自动部署时候maven提示No space left on device错误,后来经检查发现是磁盘空间满了,用下面的方法分析发现tomcat下面的logs目录占用了很大的...
  • 一,查看磁盘空间大小的命令:dfdf命令用于查看磁盘分区上的磁盘空间,包括使用了多少,还剩多少,默认单位是KB比如以下命令:df -hl执行结果如下:执行的结果每列的含义:第一列Filesystem,磁盘分区第二列Size,...
  • linux判断文件和目录是否存在[总结]1、前言 工作涉及到文件系统,有时候需要判断文件和目录是否存在。我结合APUE第四章文件和目录,总结一下如何正确判断文件和目录是否存在,方便以后查询。2、stat系列函数 ...
  • Linux系统大小判断

    2016-06-02 20:29:06
    Linux系统大小判断
  • 获取文件大小这里有两种方法:方法一、范例:unsigned long get_file_size(const char *path) { unsigned long filesize = -1; FILE *fp; fp = fopen(path, "r"); if(fp == NULL) return filesize; ...
  • ls -al file 小于 du -sk file 的大小 ,原因是:占用空间取决于文件系统的块(block)的大小linux一般默认是4k(4096) ,因此,一个大小为1个字节的文件,最小也要占用4k.但是,如果文件有空洞,那么就会相反,比如...
  • 1 、ls -l ls -l $filename | awk '{print $5}' 执行结果: [root@localhost opt]# ls -l test.txt -rw-r--r--. 1 root root 4 Jun 21 11:40 ...[root@localhost opt]# ls -l test.txt | awk '{print $5}' ...2、...
  • linux运维,经常会出现莫名的磁盘爆满,但通过du -csh * 发现文件占用不大,这个时候就要怀疑是不是隐藏的文件占用了较大空间。 2、方法 查看隐藏的文件大小方法: du -sh .[!.]* du命令用来看文件size,...
  • 笔者在开发Linux应用程序时,由于判断大小端序的问题,使用的方法是用C语言判断,方法是可以判断得到系统是什么端序,但是太麻烦了。笔者是比较懒的人,不想写那么多代码,想一句命令就解决端序判断的问题。 想了想...
  • Linux获取文件大小汇总 最近纠结一个问题,Linux下如何获取文件大小,查了一下,方法汇总如下: 1.利用fseek和ftell 2.利用fstat和fileno 下面我们就详细说一下介绍一下。 1.利用fseek和ftell获取...
  • -l :除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出。 -h, --human-readable:与-l 一起,以易于阅读的格式输出文件大小(例如 1K 234M 2G) -t :文件显示以修改时间排序,最新修改的排在最...
  • 写一个脚本,传入两个数字,对数字大小进行比对。要求对参数个数进行校验。 #定义变量 num1=$1 num2=$2 #判断是否输入两个参数,是的话将两个参数传递给下一条指令 #若不是两个参数,则打印输出内容输出并且退出...
1 2 3 4 5 ... 20
收藏数 528,244
精华内容 211,297