前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >ls指令详讲

ls指令详讲

作者头像
用户11445909
发布2025-01-13 20:27:10
发布2025-01-13 20:27:10
11300
代码可运行
举报
文章被收录于专栏:猫咪-9527猫咪-9527
运行总次数:0
代码可运行

ls 是 Linux/Unix 系统中一个非常常用的命令,用于列出指定目录中的文件和子目录。它可以提供文件的名称、权限、大小、修改时间等信息。以下是对 ls 指令的详解,包括常见选项和使用示例。

基本语法

代码语言:javascript
代码运行次数:0
复制
ls [选项] [目录/文件...]

如果不指定目录,ls 会默认列出当前工作目录下的文件和目录。

常用选项详解

1. 基本选项

ls:列出当前目录下的文件和目录(默认不显示隐藏文件)。

ls -a:显示所有文件和目录,包括隐藏文件(隐藏文件以.开头)。

代码语言:javascript
代码运行次数:0
复制
ls -a

输出:

代码语言:javascript
代码运行次数:0
复制
.  ..  .hidden_file  file1  file2

ls -l:以长格式显示文件和目录信息(权限、拥有者、大小、修改时间等)。

代码语言:javascript
代码运行次数:0
复制
ls -l

输出示例:

代码语言:javascript
代码运行次数:0
复制
-rw-r--r-- 1 user group  12345 Jan  5 15:20 file1
drwxr-xr-x 2 user group   4096 Jan  5 15:10 dir1

长格式信息字段解释

  • 第一列:文件类型与权限。
    • -:普通文件
    • d:目录
    • l:符号链接
    • c:字符设备
    • b:块设备
  • 第二列:硬链接数。
  • 第三列:文件所有者。
  • 第四列:所属用户组。
  • 第五列:文件大小(以字节为单位)。
  • 第六列:最后修改时间。
  • 第七列:文件/目录名称。

ls -h:结合 -l 使用,以人类可读的形式显示文件大小(如 KB、MB)。

代码语言:javascript
代码运行次数:0
复制
ls -lh

输出示例:

代码语言:javascript
代码运行次数:0
复制
-rw-r--r-- 1 user group  12K Jan  5 15:20 file1
drwxr-xr-x 2 user group 4.0K Jan  5 15:10 dir1

ls -d:仅显示目录本身,而不是其内容。

代码语言:javascript
代码运行次数:0
复制
ls -d */

输出示例:

代码语言:javascript
代码运行次数:0
复制
dir1/  dir2/

ls -r:以逆序显示(按名称排序的逆序)。

代码语言:javascript
代码运行次数:0
复制
ls -r

输出示例:

代码语言:javascript
代码运行次数:0
复制
file2  file1  dir1

ls -t:按修改时间排序(最近修改的文件排在最前)。

代码语言:javascript
代码运行次数:0
复制
ls -lt

ls -S:按文件大小排序(从大到小)。

代码语言:javascript
代码运行次数:0
复制
ls -lS

ls -R:递归显示目录内容(包括子目录的内容)。

代码语言:javascript
代码运行次数:0
复制
ls -R
2. 组合选项

选项可以组合使用,例如:

ls -alh:显示所有文件(包括隐藏文件),以长格式显示,并以人类可读的文件大小。

代码语言:javascript
代码运行次数:0
复制
ls -alh

输出示例:

代码语言:javascript
代码运行次数:0
复制
drwxr-xr-x 2 user group 4.0K Jan  5 15:10 .
drwxr-xr-x 3 user group 4.0K Jan  5 14:00 ..
-rw-r--r-- 1 user group  12K Jan  5 15:20 file1
-rw-r--r-- 1 user group  8.0K Jan  5 15:10 file2

ls -ltr:按时间排序,以逆序显示。

代码语言:javascript
代码运行次数:0
复制
ls -ltr

文件类型表示

在长格式输出中(ls -l),文件类型由第一列第一个字符标识:

  • -:普通文件
  • d:目录
  • l:符号链接
  • c:字符设备文件
  • b:块设备文件
  • s:套接字文件
  • p:管道文件

高级选项

--color=auto:为输出内容添加颜色,以区分文件、目录、链接等(很多系统默认开启)。

代码语言:javascript
代码运行次数:0
复制
ls --color=auto

--sort:按指定方式排序(替代默认的字母顺序)。

  • --sort=size:按大小排序。
  • --sort=time:按修改时间排序。
  • --sort=extension:按文件扩展名排序。

--full-time:显示完整的时间戳(包括秒和年份)。

代码语言:javascript
代码运行次数:0
复制
ls --full-time

-i:显示文件的 inode 编号。

代码语言:javascript
代码运行次数:0
复制
ls -i

输出示例:

代码语言:javascript
代码运行次数:0
复制
123456 file1
123457 file2

常见用法示例

列出当前目录的所有文件和子目录

代码语言:javascript
代码运行次数:0
复制
ls -al

列出指定目录的内容

代码语言:javascript
代码运行次数:0
复制
ls /path/to/directory

按文件大小排序

代码语言:javascript
代码运行次数:0
复制
ls -lS

按最近修改时间排序并显示详细信息

代码语言:javascript
代码运行次数:0
复制
ls -lt

递归列出目录内容

代码语言:javascript
代码运行次数:0
复制
ls -R

显示目录中的隐藏文件

代码语言:javascript
代码运行次数:0
复制
ls -a

查看文件的 inode 编号

代码语言:javascript
代码运行次数:0
复制
ls -i

常用别名

在许多 Linux 系统中,ls 的一些选项已经通过别名简化。例如:

  • alias ll='ls -alF'll 显示详细信息并标识文件类型。
  • alias la='ls -A'la 显示几乎所有文件(除去 ...)。
  • alias l='ls -CF'l 显示文件和目录。

可以在 ~/.bashrc~/.zshrc 文件中设置自己的 ls 别名。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-01-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 基本语法
  • 常用选项详解
    • 1. 基本选项
    • 2. 组合选项
  • 文件类型表示
  • 高级选项
  • 常见用法示例
  • 常用别名
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档