• linux ls 命令超级详解


    命令功能

    查看目标文件(包括目录)中所有文件信息,包括权限信息等。

    命令格式

    ls [选项] [目标文件]

    选项参数

    • -a , --all:查看目录下的所有文件,包括以 . 开头的隐含文件。
    • -A, --almost-all:-a,但不列出...的目录。
    • --author:-l一起使用,可以查看文件的作者。
    • -b, --escape: 打印C格式的不可以显示字符。
    • -B, --ingore-backups: 忽略带有备份文件,比如打开word文件这种会产生一个临时文件
    • --block-size=SIZE: 打印出以SIZE为单位的文件大小,比如--block-size=M表示以M为单位打印文件大小。
    • -c:
      • -lt一起使用,则按ctime进行排序,并显示ctime
      • -l 一起使用,则按文件名称排序,并显示ctime
    • -C: 表示按列显示文件,也就说文件顺序,先从向下再向右,正常顺序是从左往右按行来显示,而-C是从上到下按列来显示。
    • --color[=WHEN]: 是否使用色彩分辨文件。WHEN 可以是neverautoalways其中之一,默认是always
    • -d, --directory: 以目录形式显示目标文件,而不显示它的内容,比如它下面的文件。
    • -D, --dired: 生成适合Emacsdired模式使用的结果。
    • -f: 不对文件排序,对-aU生效,对-ls --color无效。
    • -F,--classify: 对文件显示进行标记,标记格式:
      • /标记目录文件
      • *标记可执行文件
      • @标记链接文件
      • =标记网络socket文件
      • |标记FIFO的队列管道
      • %标记一类占位符形态的特殊文件,whiteout文件
    • --file-type:-F但是它不标记可执行文件。
    • --full-time: 相当于-l --time-style=full-iso可以修改显示时间格式。
    • -g:-l,但是不显示文件所有者。
    • -G, --no-group: 不显示用户组信息。
    • -h, --human-readable: 以容易理解的格式显示文件大小,比如1K1M1G等。
    • --si:-h,但是文件大小进制不是1024,而是1000
    • -H, --dereference-command-line : 显示命令列中的符号链接指示的真正目的地,一般是链接,一般同-l一起使用。
    • --dereference-command-line-symlink-to-dir:-H,但是它是指向目录的。
    • --hide=PATTERN: 隐藏符合PATTERN正则表达式的文件。
    • --indicator-style=WORD: 指定在每个项目名称后加上指示符号,none (默认),slash-p操作), file-type--file-type操作),classify-F操作)。
    • -i, --inode: 显示文件的索引号,也就是node号。
    • -I, --ignore=PATTERN: 忽略符合PATTERN的文件。
    • -k, --kibibytes=1K:k字节形式显示文件大小。
    • -l: 将文件的详细信息显示出来,像权限,所有者,文件大小,时间等。
    • -L, --dereference: 当显示符号链接的信息时,会显示符号链接所指示的对象而并非符号链接本身的信息。
    • -m: 所有文件以逗号分隔,并把每行填满。
    • -n, --numeric-uid-gid:-l,但是会把用户名和用户组名显示为ID
    • -N, --literal: 显示文件的原生名称。
    • -o:-l,但是不显示用户组信息。
    • -p, --indicator-style=slash: 目录显示会在后面多一个/
    • -q, --hide-control-chars: 使用?来代替不可显示字符。
    • --show-control-chars: 对不可显示字符按照原来方式显示。
    • -Q, --quote-name: 将文件名用引号引起来。
    • --quoting-style=WORD: 使用指定的类型来引用文件名,可以选有的literallocaleshellshell-alwayscescapeclocale等。
    • -r, --reverse: 翻转文件,一般在排序时使用,逆序显示。
    • -R, --recursive: 递归的方式打印文件,也就是说会递归的把目录以及目录的子目录等全部显示出来。
    • -s, --size: 以块的数量显示文件大小。
    • -S: 的按照文件大小排序。
    • --sort=WORD: 按照指定属性进行排序,可以选有的:none (-U)(默认)、 size (-S)(文件大小)、 time (-t)(最后一次修改时间)、 version (-v)(版本)、 extension (-X)(扩展名)等。
    • --time=WORD: 可以指定不同的时间类型。
    • --time-style=STYLE: 显示的时间格式的调整。
    • -t: 按照最后一次修改时间进行排序。
    • -T, --tabsize=COLS: 修改tab的大小。
    • -u:
      • -lt一起使用,则显示访问时间而且依访问时间排序
      • -l一起使用,则显示访问时间但根据名称排序
      • 单独使用,则根据访问时间排序
    • -U: 不进行排序,依文件系统原有的次序列出文件。
    • -v: 按照版本进行排序。
    • -w, --width=COLS: 使用屏幕宽度而不是使用当前值显示。
    • -x: 按行方式显示文件而不是按照列方式。
    • -X: 按照扩展名进行排序。
    • -1: 一行一个文件名。
    • --help: 显示帮助。
    • --version: 显示版本信息。

    命令显示字段含义

    image

    从上面可以看到主要有7列:

    • 第一列共10位
      • 第1位表示文档类型,d表示目录,-表示文件,l表示链接文件,d表示可随机存取的设备,如U盘等,c表示一次性读取设备,如鼠标、键盘等。
      • 后9位,依次对应三种身份所拥有的权限,身份顺序为:ownergroupothers,权限顺序为:readablewritableexcutable。如:-r-xr-x---的含义为当前文档是一个文件,拥有者可读、可执行,同一个群组下的用户,可读、可写,其他人没有任何权限。
    • 第二列表示链接数,表示有多少个文件链接到inode号码。
    • 第三列表示文件拥有者。
    • 第四列表示文件所属群组。
    • 第五列表示文档容量大小,单位字节。
    • 第六列表示文档最后修改时间,注意不是文档的创建时间。比如第一个是4月2日17:22。
    • 第七列表示文档名称。以点.开头的是隐藏文档。

    常用命令

    • 列出/opt目录下的所有文件和目录详细信息,包括隐藏文件:

      ls -la /opt
      
    • 列出/opt目录下所有文件和目录的详细信息:

      ls -lR /opt
      
    • 只列出/opt目录下的所有目录详细信息:

      ls -l /opt | grep "^d"
      
    • 只列出/opt目录下的所有目录:

      ls -F /opt | grep /$
      
    • 列出/opt目录下的目录后添加/,可执行文件后添加*,链接文件后添加@等:

      ls -F /opt
      
    • 指定文件时间输出格式:

       ls -tl --time-style=full-iso
       ls -ctl --time-style=long-iso
      
    • 只列出/opt目录下的所有文件的绝对路径:

      ls | sed "s:^:`pwd`/:" 
      find /opt | xargs ls -d
      
  • 相关阅读:
    python!让人惊讶的python
    由测试中的版本同步联想到敏捷开发中的两个实践
    python中比较两个文件是否相同
    python中根据类名生成类的实例
    使用sqlServer开发应用程序时要注意的10件事
    python版的Hello World
    其他语言的.net实现列表
    Bug管理的流程和几个重点
    IL Reference
    Delphi CreateProcess函数调用示例
  • 原文地址:https://www.cnblogs.com/dwtfukgv/p/14719904.html
Copyright © 2020-2023  润新知