"List" 的缩写,是一个用于列出目录内容(文件和子目录) 的命令行工具。
该命令可以显示指定目录下的文件和目录名称、权限、大小、修改时间等信息,是文件系统导航和管理中最常用的基础命令之一。
ls [选项] [文件/目录路径1] [文件/目录路径2] ...常用选项
-l:"long listing format",以长格式显示内容,包含权限、所有者、大小、修改时间等详细信息,例如ls -l可查看当前目录文件的详细属性。-a:"all",显示所有文件和目录(包括以.开头的隐藏文件/目录),例如ls -a可显示.bashrc等隐藏配置文件。-h:"human-readable",与-l结合使用时,以人类可读的单位(如K、M、G)显示文件大小,例如ls -lh显示1.5G而非1572864字节。-t:"sort by modification time",按文件修改时间排序(最新修改的在前),例如ls -lt可快速找到最近更新的文件。-r:"reverse order",反向排序(与-t结合时最新修改的在后),例如ls -ltr按修改时间倒序显示, oldest 文件在前。-d:"directory entries",仅显示目录本身的信息而非目录内内容,例如ls -ld /etc查看/etc目录的权限和属性。-R:"recursive",递归列出子目录中的内容,例如ls -R docs会逐层显示docs目录及其所有子目录的文件。-S:"sort by file size",按文件大小排序(从大到小),例如ls -lS可快速定位目录中占用空间最大的文件。-i:"inode number",显示文件的inode编号,例如ls -i用于查看文件的inode信息(inode是文件系统中的唯一标识)。
参考示例
示例1:查看目录详细信息(长格式) 执行
ls -l /var/log,以长格式显示/var/log目录下的文件和子目录,包括权限、所有者、大小、最后修改时间等,便于检查文件权限和占用空间。示例2:显示所有文件(包括隐藏文件) 执行
ls -la ~,显示当前用户家目录(~)下的所有文件和目录,包括.bash_history、.ssh等隐藏项,适合查看用户配置文件。示例3:按大小排序并直观显示文件尺寸 执行
ls -lhS /tmp,以人类可读单位显示/tmp目录下的文件大小,并按从大到小排序,快速定位临时目录中占用空间较大的文件。示例4:查看目录本身的属性 执行
ls -ld /opt,仅显示/opt目录自身的权限、所有者等信息,而非其内部文件,常用于确认目录的访问权限是否正确。示例5:递归列出多级目录内容 执行
ls -lR project,递归显示project目录及其所有子目录的文件详情,适合快速浏览项目的目录结构和文件分布。示例6:按修改时间倒序查找最近更新的文件 执行
ls -ltr /var/www/html,按修改时间从旧到新排序显示Web目录文件,最新更新的文件在末尾,便于定位最近编辑的网页文件。示例7:结合通配符筛选文件 执行
ls -l *.log,显示当前目录下所有以.log结尾的文件的详细信息,常用于筛选特定类型的文件(如日志文件)。