ls 命令 - 你的文件管家
命令简介
还记得那个爱管闲事的老管家吗?在Linux的世界里,ls(list)命令就是这样一位尽职尽责的管家。他不仅能帮你打理所有的文件和目录,还能事无巨细地汇报每个文件的大小、权限、修改时间等信息。可以说,没有这位管家,我们在Linux的文件系统这个大宅院里就会像个睁眼瞎!
语法格式
ls [选项][文件或目录...]
常用参数
基本显示参数 - 管家的基本技能
-l:让管家以"长篇大论"模式汇报,事无巨细地告诉你每个文件的所有信息(就像你妈妈唠叨你一样详细)
-a:让管家连藏在角落里的"小可爱"(隐藏文件)都翻出来,包括那些以.开头躲猫猫的文件
-A:类似于-a,但是不会显示.和..这两个特殊目录(管家知道你对这俩"亲戚"不感兴趣)
-h:让管家用人类能看懂的方式说话,不要再用那些晦涩的字节数了(比如用K、M、G这样的单位)
-F:给每个文件戴上小帽子,让你一眼就能认出它们:
/是个爱收藏东西的目录
*是个能干活的可执行文件
@是个会打洞的符号链接
=是个爱聊天的套接字
|是个传声筒(命名管道)
>是个神秘的门
排序参数 - 管家的整理技能
-t:按时间排序,新来的小鲜肉排在前面
-S:按文件大小排序,胖子优先
-X:按文件扩展名字母顺序排,就像按姓氏排队一样
-r:反着来,从后往前数(管家偶尔也想叛逆一下)
-U:不排序,就让文件们自由自在地躺着
-v:按文件名中的数字排序,不会再出现file2排在file10前面的尴尬事了
递归和目录参数 - 管家的特殊技能
-R:让管家下到地下室,爬到阁楼,把所有房间都检查一遍(慎用,不然管家可能会累趴下)
-d:只看门面,不进屋(只显示目录本身)
--directory:和-d一样,只是名字更正式一点
格式化输出参数 - 管家的汇报方式
-1:一个一个报,慢条斯理
-C:排成整齐的列队报告
-m:用逗号分隔,像说绕口令一样
-Q:给每个文件名加上引号,让它们穿上正式的西装
--format=WORD:让管家用不同的方式汇报:
across:横着排,像吃火锅的座位
commas:用逗号分开,像念诗一样
horizontal:横着排,但更正式
long:详细汇报,管家进入唠叨模式
single-column:一个一个来,认真点名
verbose:详细汇报的另一种说法
vertical:竖着排,像教室里的座位
常用示例
基本用法
示例1:让管家汇报当前房间里都有什么
$ ls
DocumentsDownloadsPicturesProjects README.md test.txt
示例2:让管家详细汇报每个文件的情况
$ ls -l
total 32
drwxr-xr-x 2 user group 4096Jan112:00Documents
drwxr-xr-x 3 user group 4096Jan215:30Downloads
drwxr-xr-x 4 user group 4096Jan309:45Pictures
drwxr-xr-x 5 user group 4096Jan416:20Projects
-rw-r--r--1 user group 1234Jan510:15 README.md
-rwxr-xr-x 1 user group 5678Jan614:25 test.txt
示例3:让管家把藏起来的文件也找出来
$ ls -a
....bash_history .config Documents
.bash_logout .bashrc .cache .localDownloads
.git .gitconfig .npm PicturesProjects
.vimrc README.md test.txt
示例4:让管家用人话报告文件大小
$ ls -lh
total 32K
drwxr-xr-x 2 user group 4.0KJan112:00Documents
drwxr-xr-x 3 user group 4.0KJan215:30Downloads
drwxr-xr-x 4 user group 4.0KJan309:45Pictures
drwxr-xr-x 5 user group 4.0KJan416:20Projects
-rw-r--r--1 user group 1.2KJan510:15 README.md
-rwxr-xr-x 1 user group 5.6KJan614:25 test.txt
排序大比拼
示例5:按时间排序,看看谁是新来的
$ ls -lt
total 32
-rwxr-xr-x 1 user group 5678Jan614:25 test.txt
-rw-r--r--1 user group 1234Jan510:15 README.md
drwxr-xr-x 5 user group 4096Jan416:20Projects
drwxr-xr-x 4 user group 4096Jan309:45Pictures
drwxr-xr-x 3 user group 4096Jan215:30Downloads
drwxr-xr-x 2 user group 4096Jan112:00Documents
示例6:按大小排序,看看谁最胖
$ ls -lS
total 32
-rwxr-xr-x 1 user group 5678Jan614:25 test.txt
drwxr-xr-x 5 user group 4096Jan416:20Projects
drwxr-xr-x 4 user group 4096Jan309:45Pictures
drwxr-xr-x 3 user group 4096Jan215:30Downloads
drwxr-xr-x 2 user group 4096Jan112:00Documents
-rw-r--r--1 user group 1234Jan510:15 README.md
特殊技能展示
示例7:让管家检查所有房间(小心他会累趴下)
$ ls -R
.:
DocumentsDownloadsPicturesProjects README.md test.txt
./Documents:
work personal
./Documents/work:
reports presentations
./Documents/personal:
photos notes
示例8:给文件们穿上正式的西装(加引号)
$ ls -Q
"Documents""Downloads""Pictures""Projects""README.md""test.txt"
示例9:让管家用逗号分隔着报告
$ ls -m
Documents,Downloads,Pictures,Projects, README.md, test.txt
组合技能
示例10:让管家使出看家本领(多个参数组合)
$ ls -lha # 详细汇报 + 显示隐藏文件 + 人性化大小
total 48K
drwxr-xr-x 5 user group 4.0KJan615:30.
drwxr-xr-x 3 user group 4.0KJan615:30..
-rw-------1 user group 220Jan615:30.bash_history
-rw-r--r--1 user group 3.5KJan615:30.bashrc
drwxr-xr-x 8 user group 4.0KJan615:30.git
-rw-r--r--1 user group 240Jan615:30.gitconfig
drwxr-xr-x 2 user group 4.0KJan112:00Documents
注意事项
注意1:使用-R参数时要小心,万一管家跑去查看一个超大的目录树,可能会累到喘不过气 注意2:使用-a参数会让管家连那些躲起来的文件也抓出来,包括.和..这两个装神弄鬼的家伙 注意3:遇到带空格的文件名,要给它们穿上引号做的防护服,不然可能会闹出笑话
相关命令
pwd:问问管家现在在哪个房间
cd:带着管家去别的房间转转
tree:让管家用树状图画出所有房间的分布
扩展阅读
扩展1:如何给管家换身彩色的衣服(ls命令的颜色配置) 扩展2:教管家几个新技能(使用alias创建常用的ls命令组合) 扩展3:如何在自动化工作中让管家保持清醒(在脚本中使用ls命令的注意事项)
#Linux命令
#ls命令详解
#文件管理技巧
#命令行参数解析
#Linux系统管理
#程序员效率工具
#Linux新手教程
#终端操作技巧
#隐藏文件查看
#文件排序技巧