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 命令大全