Linux ls 命令

Linux ls 命令

Linux ls 命令 Linux 命令大全

Linux ls(英文全拼: list directory contents)命令用于显示指定工作目录下之内容(列出目前工作目录所含的文件及子目录)。

语法

ls [-alrtAFR] [name...]

参数 :

参数说明-a 或 --all显示所有文件(包括以 . 开头的隐藏文件)。-A 或 --almost-all显示除 . 和 .. 外的所有文件(包括隐藏文件)。-l以长格式(详细信息)列出文件(权限、所有者、大小、修改时间等)。-h 或 --human-readable与 -l 一起使用时,以人类可读的格式显示文件大小(如 KB、MB)。-t按修改时间排序(最新优先)。-r 或 --reverse反向排序(配合 -t、-S 等使用)。-S按文件大小排序(大文件优先)。-R 或 --recursive递归列出子目录内容。-F 或 --classify在文件名后附加标识符(如 / 表示目录,* 表示可执行文件)。--color彩色输出(通常默认启用,--color=auto)。-i 或 --inode显示文件的 inode 编号。-n 或 --numeric-uid-gid以数字形式显示 UID 和 GID(替代用户名和组名)。-d 或 --directory仅显示目录本身,而非其内容(常用于配合 -l)。-1每行只显示一个文件(默认在终端宽度不足时自动启用)。-m以逗号分隔的列表形式显示文件。-Q 或 --quote-name用引号括住文件名(适用于含空格的文件名)。--group-directories-first先显示目录,后显示文件。--time-style=<格式>自定义时间显示格式(如 +%Y-%m-%d)。

实例

ls -l # 以长格式显示当前目录中的文件和目录

ls -a # 显示当前目录中的所有文件和目录,包括隐藏文件

ls -lh # 以人类可读的方式显示当前目录中的文件和目录大小

ls -t # 按照修改时间排序显示当前目录中的文件和目录

ls -R # 递归显示当前目录中的所有文件和子目录

ls -l /etc/passwd # 显示/etc/passwd文件的详细信息

实例

详细列出当前目录所有文件(含隐藏文件):

ls -la

按大小反向排序文件(大文件优先):

ls -lShr

递归列出 /var/log 目录内容,并显示人类可读的文件大小:

ls -lhR /var/log

仅显示目录的详细信息(不递归):

ls -ld /etc

按修改时间排序(最新文件最后显示):

ls -ltr

列出根目录下的所有目录:

# 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 -lR /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 -ltr s*

在使用 ls -l 命令时,第一列的字符表示文件或目录的类型和权限。其中第一个字符表示文件类型,例如:

- 表示普通文件

d 表示目录

l 表示符号链接

c 表示字符设备文件

b 表示块设备文件

s 表示套接字文件

p 表示管道文件

在使用 ls -l 命令时,第一列的其余 9 个字符表示文件或目录的访问权限,分别对应三个字符一组的 rwx 权限。例如

r 表示读取权限

w 表示写入权限

x 表示执行权限

- 表示没有对应权限

前三个字符表示所有者的权限,中间三个字符表示所属组的权限,后三个字符表示其他用户的权限。例如:

-rw-r--r-- 1 user group 4096 Feb 21 12:00 file.txt

表示文件名为file.txt的文件,所有者具有读写权限,所属组和其他用户只有读取权限。

查找最近修改的文件:

ls -lt | head -5

显示最近修改的 5 个文件。

统计文件数量:

ls | wc -l

统计当前目录下的文件数量(不包括隐藏文件)。

注意事项

ls 命令的输出颜色可以通过 --color 选项控制:

蓝色:目录

绿色:可执行文件

红色:压缩文件

青色:链接文件

黄色:设备文件

在脚本中使用 ls 时要注意,直接解析 ls 的输出可能不可靠,建议使用其他方法。

不同 Linux 发行版的 ls 命令可能有细微差别,可以通过 man ls 查看具体帮助文档。

Linux 命令大全

相关文章