今天,准备实际操作进入到每一个目录里面,看一看目录里面到底是什么内容,结合原理讲解清楚。ls / 是Linux系统中的文件操作命令。它能快速列出目录内容,查看文件权限、大小、修改时间等关键信息。bin boot etc init lib.usr-is-merged lost+found mnt proc run sbin.usr-is-merged srv tmp varbin.usr-is-merged dev home lib lib64 media opt root sbin snap sys usr
不加参数:默认列出当前目录的可见文件 / 目录(隐藏文件不显示)。指定路径:可查看其他目录内容,如 ls /etc。 | |
|---|
-a | |
-A | 显示除 . 和 .. 外的所有文件(包括隐藏文件)。 |
-l | 以长格式(详细信息)列出文件(权限、所有者、大小、修改时间等)。 |
-h | 与 -l 一起使用时,以人类可读的格式显示文件大小(如 KB、MB)。 |
-t | |
-r | |
-S | |
-R | |
-F | 在文件名后附加标识符(如 / 表示目录,* 表示可执行文件)。 |
--color | 彩色输出(通常默认启用,--color=auto)。 |
-i | |
-n | 以数字形式显示 UID 和 GID(替代用户名和组名)。 |
-d | |
-1 | 每行只显示一个文件(默认在终端宽度不足时自动启用)。 |
-m | |
-Q | |
--group-directories-first | |
--time-style=<格式> | |
ls -ltotal 64dr-xr-xr-x 2 root root 4096 Dec 14 2012 bindr-xr-xr-x 4 root root 4096 Apr 19 2012 boot
1.权限字段(dr-xr-xr-x)
首位字符:文件类型(-= 普通文件,d= 目录,l= 软链接, b =可供储存的接口设备, c =串行端口设备,例如键盘、鼠标)。
后 9 位:分三组(所有者 / 所属组 / 其他人),每组 rwx 表示读、写、执行权限。
2.硬链接数(2)
普通文件默认为 1,目录值 = 子目录数 + 2(. 和 ..)。
3.所有者与所属组(root root)
文件归属的用户和用户组。
4.文件大小(4096)
-h 选项会将字节转换为易读单位(B/KB/MB/GB)。
5.修改时间(Dec 14 2012)
默认显示最近修改时间,可用 --time=atime 查看访问时间。
6.文件名(bin)
末尾符号标识类型:/ 表示目录,* 表示可执行文件(需搭配 -F 选项)。
实例
ls -l # 以长格式显示当前目录中的文件和目录ls -a # 显示当前目录中的所有文件和目录,包括隐藏文件ls -lh # 以人类可读的方式显示当前目录中的文件和目录大小ls -t # 按照修改时间排序显示当前目录中的文件和目录ls -R # 递归显示当前目录中的所有文件和子目录ls -l /etc/passwd # 显示/etc/passwd文件的详细信息
详细列出当前目录所有文件(含隐藏文件):
按大小反向排序文件(大文件优先):
递归列出 /var/log 目录内容,并显示人类可读的文件大小:# ls /bin dev lib media net root srv upload www boot etc lib64 misc opt sbin sys usr home lost+found mnt proc selinux tmp var
将 /bin 目录以下所有目录及文件详细资料列出:当文件名包含空格、特殊字符或者开始字符为破折号时,可以使用反斜杠(\)进行转义,或者使用引号将文件名括起来。例如:ls "my file.txt" #列出文件名为"my file.txt"的文件ls my\ file.txt # 列出文件名为"my file.txt"的文件ls ---filename # 列出文件名为"-filename"的文件
ls 命令还可以使用通配符进行模式匹配,例如 * 表示匹配任意字符,? 表示匹配一个字符,[...] 表示匹配指定范围内的字符。例如:ls *.txt # 列出所有扩展名为.txt的文件ls file?.txt # 列出文件名为file?.txt的文件,其中?表示任意一个字符ls [abc]*.txt # 列出以a、b或c开头、扩展名为.txt的文件
列出目前工作目录下所有名称是 s 开头的文件,越新的排越后面:在使用 ls -l 命令时,第一列的字符表示文件或目录的类型和权限。其中第一个字符表示文件类型,例如:在使用 ls -l 命令时,第一列的其余 9 个字符表示文件或目录的访问权限,分别对应三个字符一组的 rwx 权限。例如:表示文件名为file.txt的文件,所有者具有读写权限,所属组和其他用户只有读取权限。ls 命令的输出颜色可以通过 --color 选项控制: