linux 查看文件和文件夹大小
1、最简单的查看方法可以使用ls -ll、ls-lh命令进行查看,当使用ls -ll,会显示成字节大小,而ls- lh会以KB、MB等为单位进行显示,这样比较直观一些。
2、通过命令du -h –max-depth=1 *,可以查看当前目录下各文件、文件夹的大小,这个比较实用。
3、查询当前目录总大小可以使用du -sh,其中s代表统计汇总的意思,即只输出一个总和大小。
4、同样,通过命令du -h –max-depth=0 *,可以只显示直接子目录文件及文件夹大小统计值。
5、如果只想查看指定目录的总大小,可以使用du -sh 目录名称。
6、对于指定文件夹也可以指定显示层次深度,如du -h –max-depth=0 software/及du -h –max-depth=1 software/
Linux查看文件大小du命令
du [-abcDhHklmsSx] [-L 符号连接][-X 文件][–block-size][–exclude=目录或文件] [–max-depth=目录层数][–help][–version][目录或文件]
常用参数:
-a或-all 为每个指定文件显示磁盘使用情况,或者为目录中每个文件显示各自磁盘使用情况。
-b或-bytes 显示目录或文件大小时,以byte为单位。
-c或–total 除了显示目录或文件的大小外,同时也显示所有目录或文件的总和。
-D或–dereference-args 显示指定符号连接的源文件大小。
-h或–human-readable 以K,M,G为单位,提高信息的可读性。
-H或–si 与-h参数相同,但是K,M,G是以1000为换算单位,而不是以1024为换算单位。
-k或–kilobytes 以1024 bytes为单位。
-l或–count-links 重复计算硬件连接的文件。
-L符号连接或–dereference符号连接 显示选项中所指定符号连接的源文件大小。
-m或–megabytes 以1MB为单位。
-s或–summarize 仅显示总计,即当前目录的大小。
-S或–separate-dirs 显示每个目录的大小时,并不含其子目录的大小。
-x或–one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
-X文件或–exclude-from=文件 在文件指定目录或文件。
–exclude=目录或文件 略过指定的目录或文件。
–max-depth=目录层数 超过指定层数的目录后,予以忽略。
–help 显示帮助。
–version 显示版本信息。
1 要显示一个目录树及其每个子树的磁盘使用情况
du /home/linux
这在/home/linux目录及其每个子目录中显示了磁盘块数。
2 要通过以1024字节为单位显示一个目录树及其每个子树的磁盘使用情况
du -k /home/linux
这在/home/linux目录及其每个子目录中显示了 1024 字节磁盘块数。
3 以MB为单位显示一个目录树及其每个子树的磁盘使用情况
du -m /home/linux
这在/home/linux目录及其每个子目录中显示了 MB 磁盘块数。
4 以GB为单位显示一个目录树及其每个子树的磁盘使用情况
du -g /home/linux
这在/home/linux目录及其每个子目录中显示了 GB 磁盘块数。
5查看当前目录下所有目录以及子目录的大小:
du -h .
“.”代表当前目录下。也可以换成一个明确的路径
-h表示用K、M、G的人性化形式显示
6查看当前目录下user目录的大小,并不想看其他目录以及其子目录:
du -sh user
-s表示总结的意思,即只列出一个总结的值
du -h –max-depth=0 user
–max-depth=n表示只深入到第n层目录,此处设置为0,即表示不深入到子目录。
7列出user目录及其子目录下所有目录和文件的大小:
du -ah user
-a表示包括目录和文件
8列出当前目录中的目录名不包括xyz字符串的目录的大小:
du -h –exclude=\’*xyz*\’
9想在一个屏幕下列出更多的关于user目录及子目录大小的信息:
du -0h user
-0(杠零)表示每列出一个目录的信息,不换行,而是直接输出下一个目录的信息。
10只显示一个目录树的全部磁盘使用情况
du -s /home/linux
11查看各文件夹大小:du -h –max-depth=1
Linux下查找大文件
Linux上查找最大文件的3种方法
第一种:ls
最简单的方法就是借助 ls 命令,因为 ls 命令本身输出是带文件大小信息的。
比如,我要列出 /data/log/ 目录中的20个最大文件,可以:
ls -lSh /data/log/ | head -20
第二种:find
find 本身就是查找命令,可以递归查找一个目录的子目录,所以用它是自然的。
比如,查找/etc目录下最大的5个文件:
find /etc -type f -printf “%s\\t%p\\n” | sort -n | tail -5 | xargs ls -Slh
查找当前用户名下最大的10个文件
find $HOME -type f -printf “%s\\t%p\\n” | sort -nr | head -10 | xargs ls -Slh
查询大于200M的文件
find / -type f -size +200M | xargs ls -Slh
查询100M和200M之间的文件
find / -type f -size +100M -size +200M | xargs ls -Slh
查询root目录下最大的5个文件
find /root -type f -exec ls -s {} ; | sort -n | tail -n5 | xargs ls -Slh
查询/目录下10天以前最大的5个文件
find / -type f -mtime +10 -printf “%s\\t%p\\n” | sort -n | tail -5 | xargs ls -Slh
第三种:du
du 命令可以查看磁盘空间的使用情况,自然也可以用来查看磁盘上占用空间较多的文件和文件夹。
查找/root下5个最大的文件
du -ah /root | sort -nr | head -n5
查找当前目录下最大的5个目录
du -ah | sort -nr | head -n5
查找根目录下最大目录/文件(包括子文件夹)
du -Sh / | sort -rh | head -n10
只看大小在 GB 范围内的所有文件
du -ah / | grep “[0-9]G\\b”
涉及到的命令参数:
find:
-exec执行指令:假设find指令的回传值为True,就执行该指令;
-mtime n 查找系统中最后n天被改变文件数据的文件 +大于 -小于
-type 查找某一类型的文件
b -块设备文件;
c -字符设备文件;
d -目录;
p -管道文件;
f -普通文件;
l -符号链接文件;
s -socket文件;
-printf输出格式:假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出。格式可以自行指定;
sort:
-n 依照数值的大小排序;
-r 以相反的顺序来排序;
xargs:传递参数
ls -Slh
-Sl 从大到小显示详情
-Slr 从小到大显示详情
-h humans 以人类易读的方式显示(正常情况下显示为bit,加上-h后 显示的为KB MB GB TB等)
du:
-a 显示所有目录或文件的大小
-h 以K,M,G为单位,提高信息可读性
-S 显示目录的大小,但不含子目录大小
linux下怎么查看文件夹中各个文件的大小
显示当前目录所有文件大小的命令ls -lht
1
在命令框 输入命令:ls -lht 将会一一列出当前目录下所有文件的大小,以及所有文件大小的统计总和。或者直接打入ll命令。
2
使用du -sh * 命令也可以列出当前文件以及文件夹的大小。这个命令要注意:sh与*之前要有个空格的。列出home目录所有文件大小的总和命令为:du -s /home或du -sh /home
评论0