环境
centos7.9
需求
目前有一日志目录,需要清理空间,但ls都已经显示满屏,虽然可以无脑使用find+rm命令批量直接删,但程序猿爱专研(没事找事)的心理作祟,想看看到底最早的以及最大的都是什么文件。
操作
- 按日志大小排序,查看前10条记录,使用du+sort+head组合命令 du 命令用于计算每个文件和目录占用的空间大小,而 sort 命令则可以按照指定字段进行排序。 du -h --max-depth=1 会以人类可读的格式(例如 KB、MB、GB)列出当前目录下所有文件和子目录的大小。sort -hr 则按照数值大小进行降序排序(用 -r 参数),并且理解人类可读的单位(用 -h 参数)。最后,head -n 10 只显示结果的前10行。
du -h /目录/* --max-depth=1 | sort -hr | head -n 10
2. 按日期最新排序,查看前10条记录 使用 ls 命令来按修改时间(默认)对文件进行排序,并且只显示前10个最新的文件
ls -lct | head -n 10 # 按照创建时间排序,最新的排最前
ls -lut | head -n 10 # 按照访问时间排序,最新排最前
3. 按时间升序
ls -ltrh | head -n 10 # 按修改时间升序排列
ls -lctrh | head -n 10 # 按创建时间升序排序