由于公司的一台服务器运行时间久了,经常出现存储不足的情况,时不时就得看看哪个目录过大,哪些文件过大可以删除等,所以这里整理一下。
在Linux系统中,du命令用于查看文件和目录的磁盘使用空间,但它本身不支持对输出结果进行排序。为了对du的输出进行排序,通常会结合sort命令使用。
以下是一个基本的命令示例,用于查看当前目录下所有文件和子目录的大小,并按照从大到小排序:
du -h --max-depth=1 | sort -hr
- 命令说明
du -h --max-depth=1:列出当前目录下一级的所有文件和目录的大小,并以人类可读的格式显示(例如KB、MB、GB)。
sort:是一个排序命令。
-h:是sort命令的参数,表示以人类可读的数字大小进行排序。
-r:是sort命令的参数,表示反向排序,即从大到小。
如果你想要对目录进行排序而不是单独的文件,你可以使用以下命令:
du -h --max-depth=1 | sort -hr | awk '/\.$/{print $2}'
这里,awk用来选择以点(.)结尾的行,这通常代表目录,并打印出大小信息。
如果你想要递归地查看和排序所有子目录的大小,可以移除--max-depth=1:
du -h | sort -hr
这将会显示当前目录及所有子目录的大小,并按大小进行排序。
评论区