本文主要是介绍我记不住的du和sort命令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
背景: 最近总想多记下一些东西,以免忘记和遗留,用的时候直接查询自己的博客即可,不用再漫无目的的去搜索和再验证。今天讲一下之前用的很频繁的命令以供大家参考和学习。
1. du ---- estimate file space usage
千万注意:
- du 展示的是磁盘空间占用量
- ls 展示的是文件内容的大小
du一共有几个常用的参数
-a //显示所有文件的大小,也包括隐藏文件,不仅仅显示目录的大小。即包括目录和文件的大小(递归的显示)
-s //只显示当前目录的总大小,避免了全部递归显示,解决了当前目录文件很多的时候会花费很长时间,单位是 KB
-h //人类可以阅读的模式,显示格式包括 k/m/G等,这样会直接显示具体的大小
--max-depth=3 //显示目录的树层数的文件大小
-c //对文件进行自定义的计量文件的大小,计算给定的文件或多个文件的总和
当然这几个参数可以混合使用,如下图所示:
1. 我想查询 当前目录所占用的磁盘容量# du -sh2. 我想查询 当前目录的某一个文件所占用的磁盘容量# du -sh Makefile3. 我想查询 当前目录的某一个文件夹所占用的磁盘容量# du -sh Include/4. 我想查询 当前目录的几个文件或几个文件夹总共占用的磁盘容量# du -sch Makefile Include/5. 我想查询 当前目录的几个文件夹下一层所分别占用的磁盘容量# du -ch --max-depth=1 Makefile Include/ PC/ pyconfig.h6. 我想查询 当前目录下面的所有py结尾的文件的所占用磁盘容量的和# du -ch *.py7. 我想查询 当前目录下面的所有文件和文件夹各自所占用的磁盘容量# du -ah // 将显示所有的文件和文件夹# du -h // du命令默认只显示文件夹,而不显示文件大小
2. sort ---- sort lines of text files
sort是对文本文件进行排序的命令,但sort经常与其他命令一起使用,例如: 与du一起使用
sort一共有几个常用的参数
-h //人类可以阅读的方式进行排序,比较人类可读的数字,这个命令会是 1G 大于 2K
-n // 以数字的方式进行排序,这个命令只是比较 数字,于是 2K 大于 1G,这是不合理的
-r // 逆序进行排序并显示
3. 应用场景:
1. 我想查询 当前目录 从大到小的所有文件及文件夹的统计,如果太长请通过less命令进行。
这里千万记住一定要 有 “a”,否则只显示文件夹。 这个特性是du命令默认的。
# du -ah | sort -hr | less
2. 我想查询 当前目录 某些文件或文件夹 从大到小的文件及文件夹的统计
# du -ch Makefile Include/ PC/ pyconfig.h | sort -hr | less
3. 我想查询 当前目录 所有的文件 从大到小的统计,不包括文件夹。
因为文件夹本身是没有意义的,我只想统计 文件的大小。 这里的 type表示类型,f代表是文件,print0代表输出文件名称, --files0-from 是从标准输入读入数据。
find . -type f -print0 | du -h --files0-from=- | sort -hr | less
4 . 我想查询 当前目录 所有的文件夹 从大到小的统计,不包括文件
type代表类型,d代表目录,print0代表输出名称到标准输出, files0-from代表从标准输入读入
find . -type d -print0 | du -h --files0-from=- | sort -hr | less
5. 我想查询 当前目录 所有文件 从大到小的统计的前10大文件
find . -type f -print0 | du -h --files0-from=- | sort -hr | head -n10
直接增加 head命令即可。
这篇关于我记不住的du和sort命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!