【Linux】掌握 ls 命令 查看目录内容的技巧

掌握 ls 命令:从入门到进阶技巧,一篇搞定
(小白友好 + 实操导向 + 高频组合)

ls 是 Linux 里使用频率最高的命令之一,但很多人只用过 lsls -lls -a,其实它能玩出很多花样,能极大提升你查看目录的效率。

一、先记住这 8 个最常用的“黄金组合”(背下来就能用 80% 场景)

排序命令作用(一句话描述)什么场景最常用
1ls -lah详细列表 + 显示隐藏文件 + 人类可读大小随便进一个目录先敲这个最舒服
2ls -lhtr按修改时间倒序(最新文件在最下面)+人类大小看日志、看哪个文件最近被改过
3ls -lS按文件大小降序排序找大文件、查占空间的家伙
4ls -lShr按文件大小升序(最小文件在最下面)找零散小文件、清理垃圾
5ls -1每行只显示一个文件名(单列)配合管道
6ls -A显示几乎所有隐藏文件(但不显示 . 和 ..)比 -a 干净一点
7ls -F在文件名后加类型符号(/=@* 等)快速区分文件/目录/可执行/链接
8ls -R递归列出所有子目录内容粗略看整个项目结构(小心层级深)

二、核心选项速查表(高频 → 低频)

选项全写作用记住口诀
-a–all显示所有文件(包括 .开头的隐藏文件)all
-A–almost-all显示隐藏文件,但不显示 . 和 ..几乎全部(更干净)
-l–long长格式(权限、所有者、大小、时间等)long / list
-h–human-readable文件大小显示 K/M/G(需配合 -l)human
-t–sort=time按修改时间排序(最新在上)time
-r–reverse反向排序(常跟 -t 或 -S 一起用)reverse
-S–sort=size按文件大小排序(大→小)Size
-X–sort=extension按后缀名排序eXtension
-v–sort=version自然版本排序(1.10 在 1.2 后面)version(数字更聪明)
-F–classify加分类符号:/目录 *可执行 @链接File type mark
-i–inode显示每个文件的 inode 号inode(查硬链接用)
-R–recursive递归显示子目录Recursive
–color=auto(默认大多数发行版开启)类型不同颜色高亮美观 + 快速辨识
-1–format=single-column强制单列输出方便复制/管道
-d–directory只显示目录本身信息,不显示里面内容只看这个文件夹本身

三、真正能提高效率的“骚操作”组合(实测高频)

  1. 看最近改的文件(日志/调试神器)
   ls -lhtr    # 最新在最下面,眼睛往下扫最舒服
   ls -lht     # 最新在最上面(有些人喜欢)
  1. 快速找最大的几个文件
   ls -lSh | head -n 10          # 前10个最大的
   ls -lShr | head -n 10         # 最小的10个
  1. 只看最近1分钟内改过的文件(热文件监控)
   ls -lht --time-style=full-iso | grep "2026-01-30 18:"   # 改成你当前时间段
  1. 列出所有 .log 文件并按时间排序
   ls -lht *.log
  1. 递归看目录树(轻量版 tree 命令)
   ls -R                         # 所有层级
   ls -lR | grep "^d"            # 只看目录层级
  1. 一键打开/编辑最新文件(超级实用!)
   vim $(ls -t | head -1)             # 编辑最新文件
   cat $(ls -t | head -1)             # 查看最新文件内容
   less $(ls -tr | head -1)           # 查看最早的文件(常用于日志)
  1. 区分文件类型不看颜色(纯符号版)
   ls -F
   # 示例输出:
   # script*  data/  link@  image.png
  1. 管道 + ls 的经典玩法
   ls -1 | wc -l               # 当前目录有多少文件
   ls -S | head -1             # 最大的文件叫什么
   ls *.jpg | xargs -I {} mv {} /backup/   # 批量移动

四、一个小彩蛋:几乎没人知道的几个冷门但有意思的选项

  • ls --group-directories-first → 目录排在文件前面(很舒服的阅读顺序)
  • ls -v → 数字自然排序(file1 file2 file10 而不是 file1 file10 file2)
  • ls -Q → 文件名全部加双引号(适合脚本处理怪文件名)
  • ls --hide='*.bak' → 隐藏某些文件(不显示 .bak 结尾的)

最后总结一句口诀(背下来终生受益)

“ls 看目录,先 -lah 打底;找新文件 -htr;找大文件 -Shr;批量处理 -1”

熟练掌握上面这些,日常运维/开发/排查问题时,查看目录的速度和准确度能提升 3–5 倍。

你平时最常敲的 ls 组合是哪个?或者你还有什么 ls 没解决的痛点?可以继续问~ 😄

文章已创建 4237

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部