ls命令


  1. 命令格式

    ls [選項]... [文件]...

  2. 命令描述

    列出文件的相關信息。    

  3. 參數說明

    -a , --all: 不忽略以.開始的條目(我們也可以稱之爲隱藏文件)

    -A , --almost-all:不列出 . 和 ..

    --author:結合-l,打印出文件的作者

    -b, --escape:以C語言的樣式打印不可輸出的字符(如文件名中包含空格則打印\ (空格))

    --block-size=SIZE:打印以SIZE爲單元的大小(可以是K/M/G等儲存單位,也可以是數字)

    -B, --ignore-backups:不列出以以~結尾的條目

    -c:結合-lt: 按ctime排序排序並顯示ctime(文件狀態最後修改時間), 結合-l:顯示ctime並按文件名排序,其他情況:按ctime排序

    -C:每欄由上至下列出項目

    --color[=WHEN]:彩色輸出,當前默認爲'always', 可以wei'never' 和 'auto'

    -d, --directory:列出目錄,而不是其下的文件,並且不引用符號鏈接。

    -f   : 不排序,啓用 -aU, 禁用 -ls --color。

    -F , --classify :在每一個文件的末尾加上一個字符說明該文件的類型。"*"表示可執行文件、"@"表示符號鏈接、"|"表示FIFOS、"/"表示目錄、"="表示套接字。

    --file-type:和上面一樣,只是不附加"*"

    --format=WORD:利用關鍵詞來完成ls的輸出格式。(across -x, commas -m, horizontal -x, long -l, single-column  -1,verbose -l, vertical -C)

    --full-time : 參照-l --time-style=full-iso

    -g : 參照-l 但是不列出所有者

    --group-directories-first : 將目錄和文件分組排序,如果使用--sort=none(-U)參數,則禁用分組

    -G, --no-group : 在長列表(-l)中,不顯示文件的屬組

    -h, --human-readable: 使用易讀模式打印文件大小(如 243M, 22G)

    --si : 和上面一樣,但是使用1000進制而不是1024

    -H, --dereference-command-line :

    --dereference-command-line-symlink-to-dir :

    --hide=PATTERN : 不包含匹配模式(PATTERN)的結果

    --indicator-style : 附加WORD樣式在每個名稱後<none (default), slash (-p), file-type (--file-type), classify (-F))>

    -i, --inode : 打印文件的索引號

    -I, --ignore=PATTERN : 不包含匹配模式(PATTERN)的結果

    -k, --kibibytes : 使用1024-byte blocks

    -l : 使用長列表形式

    -L, --dereference : 當顯示一個符號鏈接信息時,顯示的是文件本身的信息而不是符號鏈接的信息

    -m : 用逗號分割條目並且儘量填滿每行

    -n, --numeric-uid-gid : 和-l類似,但是使用uid/gid而不是用戶名/組名

    -N, --literal : 打印原始條目名稱

    -o : 和-l類似,但不顯示屬組信息。

    -p, --indicator-style=slash :


  4. 示例

    1. 使用長列表形式打開

      sly@fskj-u-sly:~/st$ ls -l
      總用量 2201368
      -rw-rw-r-- 2 sly sly  125142248  7月 23 16:37 data
      -rw-rw-r-- 2 sly sly  125142248  7月 23 16:37 data.db
      -rw-rw-r-- 1 sly sly 2002275968  7月 23 16:40 data.db.bak
      drwxrwxr-x 2 sly sly       4096  7月 23 19:23 tmp
      -rw-r--r-- 1 sly sly    1625224  7月 23 16:35 Work Note
    2. 使用易讀模式(-h,要配合-l纔有效果),並顯示inode號(-i)

      sly@fskj-u-sly:~/st$ ls -ihl
      總用量 2.1G
      1832948 -rw-rw-r-- 2 sly sly 120M  7月 23 16:37 data  #第一二個文件inode一樣
      1832948 -rw-rw-r-- 2 sly sly 120M  7月 23 16:37 data.db
      1832932 -rw-rw-r-- 1 sly sly 1.9G  7月 23 16:40 data.db.bak
      1962361 drwxrwxr-x 2 sly sly 4.0K  7月 23 19:23 tmp
      1832664 -rw-r--r-- 1 sly sly 1.6M  7月 23 16:35 Work Note
    3. 使用 -F用字符標記文件類型(因爲第一個和第二個文件是符號連接文件所以用@標記),因爲第一個和第二個文件都是符號鏈接且第二個是一個套接字文件,使用-L參數會顯示源文件的信息,所以使用=標記。

      sly@fskj-u-sly:~/st/tmp$ ls -F
      hosts@  mysqld.sock@  src/  test.py*
      sly@fskj-u-sly:~/st/tmp$ ls -LF
      hosts  mysqld.sock=  src/  test.py*
    4. 使用-a參數可顯示全部文件,-A顯示除了.和..的文件,-B不顯示以~結尾的文件

      sly@fskj-u-sly:~/st/tmp$ ls 
      test.py  test.py~
      sly@fskj-u-sly:~/st/tmp$ ls -A
      .test.py  test.py  test.py~
      sly@fskj-u-sly:~/st/tmp$ ls -a
      .  ..  .test.py  test.py  test.py~
      sly@fskj-u-sly:~/st/tmp$ ls -AB
      .test.py  test.py
    5. 使用--block-size參數設置單元大小(原始是以B爲單位)

      sly@fskj-u-sly:~/st/tmp$ ls -l
      總用量 8
      -rwxrwxr-x 1 sly sly 1133  7月 23 19:49 test.py
      -rwxrwxr-x 1 sly sly   33  7月 23 19:44 test.py~
      sly@fskj-u-sly:~/st/tmp$ ls --block-size=K -l
      總用量 8K
      -rwxrwxr-x 1 sly sly 2K  7月 23 19:49 test.py
      -rwxrwxr-x 1 sly sly 1K  7月 23 19:44 test.py~
      sly@fskj-u-sly:~/st/tmp$ ls --block-size=3 -l
      總用量 2731
      -rwxrwxr-x 1 sly sly 378  7月 23 19:49 test.py
      -rwxrwxr-x 1 sly sly  11  7月 23 19:44 test.py~


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章