ls: 显示目下的内容及相关属性信息

2023-11-16

ls: 显示目下的内容及相关属性信息

【功能说明】

  ls 命令可以理解为英文单词 “list” 的缩写,其功能是列出目录的内容及其内容属性信息(list directory contents)。该命令有点类似于DOS系统下的dir命令,有趣的是,Linux下其实也有dir命令,但是我们更习惯于使用ls命令。

【语法格式】

1 ls    [option]     [file]
2 ls    【选项】      【文件或者目录】

 提示说明:

  1) ls命令以及后面的选项和文件,每个元素之间都要至少要有一个空格。

  2) 命令后面的选项和目录文件可以省略,表示查看当前路径的文件信息

【命令参数说明】

参数选项 解释说明
-l 使用长格式列出文件及目录信息
-a 显示目录下的所有文件,包括以 “.” 字符开始的隐藏文件
-t 根据最后的修改时间(mtime)排序,默认是以文件名排序
-r 依相反次序排序
-F 在条目后加文件类型的指示符号(*、/、=、@、|,其中的一个)
-P 只在目录后面加上 “/”
-i 显示文件或目录的inode节点信息
-d 当遇到目录时,列出目录本身而非目录内的文件,并且不跟随符号链接
-h 以人类可读的信息显示文件或目录大小,如1kb、1M、1G等显示格式
-S 根据文件大小排序
-R 递归列出所有子目录
-x 逐行列出项目而不是逐栏列出
-X 根据扩展名排序
-c 根据状态改变时间(ctime)排序
-u 根据最后访问时间(atime)排序
--color={never,always,auto} 不同的文件类型显示不同的颜色参数,never表示不显示,always表示总是显示,auto表示自动显示
--full-time 以完整的时间格式输出
--time-style={full-iso,long-ios,ios,locale} 以不同的时间格式输出,long-iso效果最好
--time={atime,ctime} 按不同的时间属性输出,atime表示按访问时间,ctime表示按改变权限属性时间,如果不加此参数则默认认为最后的修改时间。
   

【使用范例】

     在开始范例讲解之前,需要先做一些准备,顺便整合一下前面使用的命令。

 1 [root@test-1 ansible]# mkdir -p /test
 2 [root@test-1 ansible]# cd /test/
 3 [root@test-1 test]# touch file{1..5}.txt
 4 [root@test-1 test]# mkdir -p dir{1..5}
 5 [root@test-1 test]# tree
 6 .
 7 ├── dir1
 8 ├── dir2
 9 ├── dir3
10 ├── dir4
11 ├── dir5
12 ├── file1.txt
13 ├── file2.txt
14 ├── file3.txt
15 ├── file4.txt
16 └── file5.txt
17 
18 5 directories, 5 files

1.基础范例

1.1 案例1:直接指向ls命令,不带任何参数。

1 [root@test-1 test]# ls
2 dir1  dir2  dir3  dir4  dir5  file1.txt  file2.txt  file3.txt  file4.txt  file5.txt

1.2 案例2:使用-a参数显示所有文件,特别是隐藏文件。

1 [root@test-1 test]# touch .file6.txt     #在创建一个隐藏文件,在linux系统中“.”(点号)开头的文件就是隐藏文件
2 [root@test-1 test]# ls
3 dir1  dir2  dir3  dir4  dir5  file1.txt  file2.txt  file3.txt  file4.txt  file5.txt
4 [root@test-1 test]# ls -a
5 .  ..  dir1  dir2  dir3  dir4  dir5  file1.txt  file2.txt  file3.txt  file4.txt  file5.txt  .file6.txt
6 #提示:
7     #加了-a参数,就会把以“.”(点号)开头的内容显示出来了,这里显示的第一个点号,表示当前目录,即test目录本身,而两个点号则表示当前目录的上级目录,此处就代表根目录了。有关一个点、两个点的知识,在后面的ln命令中会有详细讲解
8 [root@test-1 test]# ls -A     #列出所有文件,包括隐藏文件,但不包括 “.” 与 “..”这两个目录
9 dir1  dir2  dir3  dir4  dir5  file1.txt  file2.txt  file3.txt  file4.txt  file5.txt  .file6.txt

1.3 案例3:使用-l参数显示详细信息

[root@test-1 test]# ls -l      #此处的时间属性列默认显示的是文件的最后一次修改时间
total 0
drwxr-xr-x 2 root root 6 Sep 21 07:06 dir1
drwxr-xr-x 2 root root 6 Sep 21 07:06 dir2
drwxr-xr-x 2 root root 6 Sep 21 07:06 dir3
drwxr-xr-x 2 root root 6 Sep 21 07:06 dir4
drwxr-xr-x 2 root root 6 Sep 21 07:06 dir5
-rw-r--r-- 1 root root 0 Sep 21 07:06 file1.txt
-rw-r--r-- 1 root root 0 Sep 21 07:06 file2.txt
-rw-r--r-- 1 root root 0 Sep 21 07:06 file3.txt
-rw-r--r-- 1 root root 0 Sep 21 07:06 file4.txt
-rw-r--r-- 1 root root 0 Sep 21 07:06 file5.txt
#提示:
     #说明:这个-l参数是最常用的参数了,意思是用长格式列出目录下的文件类型、权限、连接数、属主、属组及创建修改时间的信息。这里每个列的属性含义都需要熟练掌握,后文会详细说明这些属性信息

可能有人已经注意到了,创建或修改时间的格式没有年份的信息,那么如何显示时间全部信息呢,请看案例4

1.4 案例4:显示完整时间属性的参数 --time-style=long-iso

 1 [root@test-1 test]# ls -l --time-style=long-iso    #以long-iso方式显示时间
 2 total 0
 3 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir1
 4 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir2
 5 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir3
 6 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir4
 7 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir5
 8 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file1.txt
 9 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file2.txt
10 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file3.txt
11 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file4.txt
12 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file5.txt
13 
14 #提示:这样的时间格式看起来是不是总让人感到心情舒畅呢,关于--time-style的其他可选参数,请大家自行测试

对于上面的命令,说明如下:

  1)--time-style 可选的参数值有如下几个,如full-iso、long-iso、iso、locale。默认值是locale

  2)在生产场景中经常会遇到同一个目录下的文件及目录时间的显示不一致的问题,所以需要使用 ls -l --time-style=long-iso 来调整,如果觉得参数太多不好记,则可以设置一个别名管理,见后文的alias命令

  3)值得一提的是,执行ls -l等命令时,默认显示的是文件最后一次的修改时间(如果是新文件那么就是创建时间了)

  4)ls --full-time用于显示完整时间,等同于ls -l --time-style=full-iso

    既然ls -l输出结果的时间属性列为修改时间,那么能否改成其他的时间,例如:显示最后一次文件访问时间,这当然也是可以的,具体请参考案例5

1.5 案例5:执行ls命令,带显示内容的访问时间属性的参数

 1 [root@test-1 test]# stat file1.txt              #显示文件的属性及状态信息,
 2   File: ‘file1.txt’
 3   Size: 0             Blocks: 0          IO Block: 4096   regular empty file
 4 Device: fd00h/64768d    Inode: 100825163   Links: 1
 5 Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
 6 Access: 2019-09-21 07:06:01.923683869 -0400               #这里就是文件的访问时间,是我们现在需要关注的
 7 Modify: 2019-09-21 07:06:01.923683869 -0400
 8 Change: 2019-09-21 07:06:01.923683869 -0400
 9  Birth: -
10 [root@test-1 test]# date                   #查看当前系统时间
11 Sat Sep 21 07:51:47 EDT 2019
12 [root@test-1 test]# cat file1.txt               #查看文件内容即表示访问了文件,
13 [root@test-1 test]# stat file1.txt               #重新查看文件的访问时间
14   File: ‘file1.txt’
15   Size: 0             Blocks: 0          IO Block: 4096   regular empty file
16 Device: fd00h/64768d    Inode: 100825163   Links: 1
17 Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
18 Access: 2019-09-21 07:52:12.945530547 -0400                 #可以发现file1.txt的访问时间已经发生了变化
19 Modify: 2019-09-21 07:06:01.923683869 -0400
20 Change: 2019-09-21 07:06:01.923683869 -0400
21  Birth: -
22 [root@test-1 test]# ls -l --time-style=long-iso --time=atime           #增加--time=atime参数,显示访问时间
23 total 0
24 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir1
25 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir2
26 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir3
27 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir4
28 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir5
29 -rw-r--r-- 1 root root 0 2019-09-21 07:52 file1.txt              #文件的时间列确实发生了改变,是前面的访问的时间无疑
30 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file2.txt
31 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file3.txt
32 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file4.txt
33 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file5.txt
34 [root@test-1 test]# ls -l --time-style=long-iso
35 total 0
36 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir1
37 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir2
38 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir3
39 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir4
40 drwxr-xr-x 2 root root 6 2019-09-21 07:06 dir5
41 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file1.txt            #这里是文件的默认修改时间列
42 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file2.txt
43 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file3.txt
44 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file4.txt
45 -rw-r--r-- 1 root root 0 2019-09-21 07:06 file5.txt

提示:通过上面实践,可以得出结论了,--time=atime显示的确实是访问时间,而非默认的修改时间。

对于上的命令,需要说明如下两点

  1)与之相关命令还有ls -l --time-style=long-iso --time=ctime,用于显示文件改变的时间

  2)有关文件时间列及mtime、atime、ctime的知识,touch命令时已经写出来了

1.6 案例6:执行ls 命令,带 -F参数(这一点和tree命令有点类似)

 1 [root@test-1 test]# ls -F    # -F 我们可以清晰的看到所有的目录的结尾都被加上了斜线 "/"
 2 dir1/  dir2/  dir3/  dir4/  dir5/  file1.txt  file2.txt  file3.txt  file4.txt  file5.txt
 3 [root@test-1 test]# ls -F |grep /   #过滤目录
 4 dir1/
 5 dir2/
 6 dir3/
 7 dir4/
 8 dir5/
 9 [root@test-1 test]# ls -F |grep -v /    #排除所有目录,过滤出文件
10 file1.txt
11 file2.txt
12 file3.txt
13 file4.txt
14 file5.txt

 

转载于:https://www.cnblogs.com/scajy/p/11563055.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ls: 显示目下的内容及相关属性信息 的相关文章

  • window系统消失的c盘,实际占用与显示占用相差好多G

    问题 C盘一直显示的红色提醒 我c盘实际占用的空间只有33 1GB 而我的c盘总共大小是59 9GB 显示的剩余大小是1 35GB 也就是说我占用了58 11 和c盘的总文件大小相差了25GB 那么消失的25GB去了哪里 我百度过这个问题
  • plsql更改用户登录密码

    ORACLE数据库系统是美国ORACLE公司 甲骨文 提供的以分布式数据库为核心的一组软件产品 是目前最流行的客户 服务器 CLIENT SERVER 或B S体系结构的数据库之一 比如SilverStream就是基于数据库的一种中间件 O
  • texlive支持中文的简单方法

    1 确保tex文件的编码方式是UTF 8 2 在文档开始处添加一行命令即可 即 usepackage UTF8 ctex 如下所示 documentclass article usepackage UTF8 ctex begin artic
  • Win11微软账号登录不上?Win11登录Microsoft账户出错的解决方法

    Win11微软账号登录不上 近期有部分Win11用户反映在登录微软账号会出现一直转圈 无法登录的情况 这样导致部分功能都不能正常使用了 为此十分令人头疼 那么对于这一情况 有没有什么方法可以有效的解决呢 下面小编教给大家操作方法 大家可以去
  • redis主从同步,总是显示master_link_status:down的解决方法

    前几天 在修改一台从节点的redis的监听端口后 重启了下redis 发现master link status 很长时间一直都是down状态 查看了redis日志 发现日志里出现很多的 I O error trying to sync wi
  • 虚拟机管理程序、虚拟化和云: 深入剖析 PowerVM 虚拟机管理程序

    预备知识 Power 是没有限制的虚拟化 一些企业打算依靠 PowerVM 虚拟化将多个工作负载整合到较少系统上 从而提高服务器利用率 降低成本 Power VM 为基于 Power Systems 平台的高级 RAS 功能和领先性能为 A
  • 操作系统PV操作及读者写者问题

    操作系统PV操作及读者写者问题 目录 1 信号量 2 P V操作原语可描述为以下式子 3 解释 4 互斥模式原理 5 同步模式原理 6 读者写者问题 1 信号量 PV操作与信号量的处理有关 信号量是表示资源的实体 是一个与队列有关的整型变量
  • Linux系统编程:多线程交替打印ABC

    引言 分享关于线程的一道测试题 因为网上基本都是Java的解决方法 决定自己写一篇来记录一下线程的学习 问题描述 编写一个至少具有三个线程的程序 称之为线程 A B 和 C 其中线程 A 输出字符 A 线程 B 输出字符 B 线程 C 输出
  • 安装黑苹果双系统专辑贴(持续更新...)

    最近终于开始研究黑苹果 然后浏览了几篇文章贴收集一下 以便需要时随时阅览 和同学们互相学习 零基础篇 1 https blog csdn net a792396951 article details 80230946 2 https zhu
  • 程序员的自我修养——链接、装载与库

    1 温故而知新 操作系统概念 北桥 连接高速芯片 系统调用接口 以软件中断的方式提供 如Linux使用0x80号中断作为系统调用接口 多任务系统 进程隔离 设备驱动 直接使用物理内存的弊端 地址空间不隔离 内存使用效率低 程序运行的地址不确
  • 03LinuxC线程学习之线程共享和非共享

    1 线程共享和非共享 1 1 线程共享资源 1 文件描述符表 由于线程间共享进程间的内容 而文件描述符表在主线程的PCB当中 各个线程可以直接去请求访问 所以线程间通信就不需要像进程那样通过管道这些方式通信 2 每种信号的处理方式 即当某个
  • Linux系统如何看目录属于哪个磁盘分区

    Linux是先有目录 再有磁盘分区 df h 目录 例如 没有挂载磁盘的目录 显示在系统盘 root iZ2ze57v3n0zma46zqiq8nZ sh 1 5 5 df h alidata Filesystem Size Used Av
  • Elasticsearch 日志

    下载并安装 Filebeat 首次使用 Filebeat 请参阅入门指南 复制代码片段 curl L O https artifacts elastic co downloads beats filebeat filebeat 7 2 0
  • Linux alien命令

    一 简介 alien是一个用于在各种不同的Linux包格式相互转换的工具 其最常见的用法是将 rpm转换成 deb 或者反过来 二 安装 http toutiao com a6188997768449360129 三 实例 http www
  • Visual studio 2005 hangs on startup AppHangXProcB1 svchost devenv.exe svchost.exe:{2a811bb2-303b-48b...

    This problem has been torturing me for the whole afternoon and after searching on the web for a long time I finally get
  • 自己动手写操作系统(一)

    本系列文章将一步步实现一个简单的操作系统 实验环境是在Linux系统下通过Bochs虚拟机运行我们自己写的操作系统 一 实验环境搭建 1 Ubuntu的安装 Windows用户可以选择在虚拟机中安装Ubuntu 具体安装教程可自行搜索 2
  • 【操作系统】王道考研 p42 段页式管理方式

    段页式管理方式 知识总览 分段 分页管理方式中最大的优缺点 关于段式管理会产生外部碎片 ps 分段管理中产生的外部碎片也可以用 紧凑 来解决 只是需要付出较大的时间代价 分段 分页 段页式管理 示意图 先分段 后分页 段页式管理的逻辑地址结
  • CentOS Linux服务器安全设置

    转自 http www osyunwei com archives 754 html 引言 我们必须明白 最小的权限 最少的服务 最大的安全 所以 无论是配置任何服务器 我们都必须把不用的服务关闭 把系统权限设置到最小话 这样才能保证服务器
  • gdb attach 进程调试

    gdb调试正在运行的进程 GDB可以对正在执行的程序进行调度 它允许开发人员中断程序 并查看其状态 之后还能让这个程序正常地继续执行 gdb attach xxxxx xxxxx为利用ps命令获得的子进程process
  • 【操作系统xv6】学习记录4-一级页表与二级页表

    占位

随机推荐

  • websocket封装

    封装 class SocketPlugin constructor param this websocket null this isConnect false this timeoutNum null this isActivelyClo
  • 动态多光源 Light-Pre-Pass Lighting 实现

    辛苦数天 终于有所突破 在rendermonkey里用glsl实现的代码请去这里下载 关于渲染器结构设计可参见 http www cnblogs com cloudffx archive 2011 08 31 2160208 html 关于
  • java三种实现文件上传方法

    文章转载自点击看原文 前言 因自己负责的项目 jetty内嵌启动的SpringMvc 中需要实现文件上传 而自己对java文件上传这一块未接触过 且对 Http 协议较模糊 故这次采用渐进的方式来学习文件上传的原理与实践 该博客重在实践 一
  • 房屋租赁

    作者主页 编程指南针 作者简介 Java领域优质创作者 CSDN博客专家 CSDN内容合伙人 掘金特邀作者 阿里云博客专家 51CTO特邀作者 多年架构师设计经验 腾讯课堂常驻讲师 主要内容 Java项目 Python项目 前端项目 人工智
  • Android静态注册内部类广播BroadcastReceiver

    用静态注册内部类广播出现异常 09 14 11 31 25 576 E AndroidRuntime 3391 FATAL EXCEPTION main 09 14 11 31 25 576 E AndroidRuntime 3391 ja
  • Kettle下载Redisinput插件查询Redis数据

    Kettle下载Redisinput插件查询Redis数据 安装插件 1 下载Redisinput插件 https download csdn net download ispringmw 12909650 2 将完整插件包复制到Kettl
  • CGI之C语言篇

    为什么要进行CGI编程 在HTML中 当客户填写了表单 并按下了发送 submit 按钮后 表单的内容被发送到了服务器端 一般的 这时就需要有一个服务器端脚本来对表单的内容进行一些处理 或者是把它们保存起来 或者是按内容进行一些查询 或者是
  • Kubernetes笔记 (1) - 系统概述

    Kubernetes概述 Kubernetes由google开源 它的开发和设计都深受Google内部久负盛名的系统Borg的影响 而且 它的许多顶级贡献者之前也是Borg系统的开发者 Borg是Google内部使用的大规模集群管理系统 K
  • 分布式-zookeeper

    Zookeeper的Leader选举
  • 解决The number of method references in a .dex file cannot exceed 64K的问题

    需要分包build只需要 在build gradle defaultConfig中加入 multiDexEnabled true defaultConfig multiDexEnabled true
  • POI-Excel导出:发现xxx.xlsx中的部分内容有问题

    问题场景 新项目上需要用到页面上Excel导出下载 于是把老项目中用了很久的一个Excel工具类拿了过来 因为老项目导出的是 xls文件 新项目需要导出 xlsx 就对着改了下 改完之后导出文件 发现会弹出提示 点击是之后 文件能正常查看
  • 陀螺研究院:“模式币”项目生命周期比较研究报告(附完整PDF下载)

    文 陀螺研究院 飞鱼 秀秀 最近 PGC 和 趣步 项目跑路 很多维权帖子发布在网上 引发大家的热议 如果说2019年是 平台币之年 按照这样的发展趋势 把2019年称为 模式币之年 也不为过 模式币 疯狂拉盘造成的财富效应会吸引许多人入场
  • 创建一个popwindow 并动态设置pop的高度 限定pop高度

    创建一个popwindow 并动态设置pop的高度 限定pop高度 这里举个例子 pop里面放的是一个listview 直接上代码 SelectMedicalCasePopwindow java public class SelectMed
  • 力扣每日一题——三角形的最大周长

    题目链接 class Solution public int largestPerimeter vector
  • react仿钉钉流程图-审批工作流

    前言 此前做项目遇到一个流程图的业务场景 查找了一些资料和插件都没有找到理想的 最后找到了一款比较美观 仿钉钉流程图的 但是找来找去都找不到react版本的 只找到vue版本的 没办法 只能自己写一个 仿钉钉流程图 Api包括 一维数组传参
  • vue 自适应屏幕分辨率,在不同分辨率,以及缩放都按照设计稿展示

    项目中 会遇到这样的问题 一个网页在1920 1080的分辨率下 一屏正好展示完当前页面 但是在1366 768 或者在2k高分辨率下 页面会有滚动条 或者下方会出现空白 还有一种是14寸 或者13寸笔记本在出厂时会设置缩放125 或者15
  • C# NPOI写excel文件,设置某个单元格为自动筛选

    如标题所示 附上几行代码 HSSFWorkbook workbook new HSSFWorkbook 创建工作表 var sheet workbook CreateSheet 信息表 设置excel的自动筛选 CellRangeAddre
  • 函数局部有界性定理_高等数学入门——函数极限的基本性质

    系列简介 这个系列文章讲解高等数学的基础内容 注重学习方法的培养 对初学者不易理解的问题往往会不惜笔墨加以解释 在内容上 以国内的经典教材 同济版高等数学 为蓝本 并对具体内容作了适当取舍与拓展 例如用 语言证明函数极限这类高等数学课程不要
  • API学习笔记:2.3-2.4 API核心DLL与Unicode和多字节

    API核心DLL与Unicode和多字节 2 3 Windows核心DLL 2 3 1 核心DLL简介 2 4 Unicode和多字节 2 4 1 W版本和A版本的API 2 4 2 Unicode与ASCII的转换 前面几章基本都是总体的
  • ls: 显示目下的内容及相关属性信息

    ls 显示目下的内容及相关属性信息 功能说明 ls 命令可以理解为英文单词 list 的缩写 其功能是列出目录的内容及其内容属性信息 list directory contents 该命令有点类似于DOS系统下的dir命令 有趣的是 Lin