Provided by: manpages-zh_1.6.3.6-1_all bug

NAME

       ls, dir, vdir - 列目錄內容

提要

       ls [選項] [檔名...]

       POSIX 標準選項: [-CFRacdilqrtu1]

GNU 選項 (短格式):

       [-1abcdfgiklmnopqrstuxABCDFGLNQRSUX]  [-w  cols]  [-T  cols]  [-I  pattern]  [--full-time]
       [--format={long,verbose,commas,across,vertical,single-column}]
       [--sort={none,time,size,extension}]               [--time={atime,access,use,ctime,status}]
       [--color[={none,auto,always}]] [--help] [--version] [--]

描述( DESCRIPTION

       程式ls先列出非目錄的檔案項,然後是每一個目錄中的“可顯示”檔案。如果  沒有選項之外的引數【譯
       註:即檔名部分為空】出現,預設為  "."  (當前目錄)。  選項“  -d ”使得目錄與非目錄項同樣對
       待。除非“ -a ” 選項出現,文 件名以“.”開始的檔案不屬“可顯示”檔案。

       以當前目錄為準,每一組檔案(包括非目錄檔案項,以及每一內含檔案的目錄)分  別按檔名比較順序
       排序。如果“  -l ”選項存在,每組檔案前顯示一摘要行: 給出該組檔案長度之和(以 512 位元組為單
       位)。

       輸出是到標準輸出( stdout )。除非以“ -C ”選項要求按多列輸出,輸出  將是一行一個。然而,輸
       出到終端時,單列輸出或多列輸出是不確定的。可以分別 用選項“ -1 ” 或“ -C ”來強制按單列或多列
       輸出。

       -C     多列輸出,縱向排序。

       -F     每個目錄名加“ / ”字尾,每個 FIFO 名加“ | ”字尾, 每個可執行名加“ * ”字尾。

       -R     遞迴列出遇到的子目錄。

       -a     列出所有檔案,包括以 "." 開頭的隱含檔案。

       -c     使用“狀態改變時間”代替“檔案修改時間”為依據來排序 (使用“ -t  ”選項時)或列出(使用“
              -l ”選項時)。

       -d     將目錄名象其它檔案一樣列出,而不是列出它們的內容。

       -i     輸出檔案前先輸出檔案系列號(即  i 節點號: i-node number)。 -l 列出(以單列格式)檔
              案模式(  file   mode   ),檔案的鏈   接數,所有者名,組名,檔案大小(以位元組為單
              位),時間信  息,及檔名。預設時,時間資訊顯示最近修改時間;可以以 選項“ -c ”和“ -u
              ”選擇顯示其它兩種時間資訊。對於設  備檔案,原先顯示檔案大小的區域通常顯示的是主要和
              次要的 號(majorand minor device numbers)。

       -q     將檔名中的非列印字元輸出為問號。(對於到終端的輸出這是預設的。)

       -r     逆序排列。

       -t     按時間資訊排序。

       -u     使用最近訪問時間代替最近修改時間為依據來排序(使用  “  -t ”選項時)或列出(使用“ -l
              ”選項時)。

       -1 單列輸出。

GNU 細節

       如果標準輸出是終端,將多列輸出(縱向排序)。

       dir ( 也被安裝為命令 d ) 等同於“ ls -C ”;即,檔案
              預設是多列輸出,縱向排序。vdir ( 也被安裝為命令 v ) 等同於“ ls -l ”;  即,檔案預設
              是按長格式輸出。

GNU 選項

       -1, --format=single-column 一行輸出一個檔案(單列輸出)。如標準輸出不是到終端, 此選項就是
       預設選項。

       -a, --all
              列出目錄中所有檔案,包括以“.”開頭的檔案。

       -b, --escape
              把檔名中不可輸出的字元用反斜槓加字元編號(就象在 C 語言裡一樣)的形式列出。

       -c, --time=ctime, --time=status
              按檔案狀態改變時間(i節點中的ctime)排序並輸出目錄內    容。如採用長格式輸出(選項“
              -l”),使用檔案的狀態改  變時間取代檔案修改時間。【譯註:所謂檔案狀態改變(i節 點中
              以ctime標誌),既包括檔案被修改,又包括檔案屬性(    如所有者、組、連結數等等)的變
              化】

       -d, --directory
              將目錄名象其它檔案一樣列出,而不是列出它們的內容。

       -f     不排序目錄內容;按它們在磁碟上儲存的順序列出。同時啟 動“ -a ”選項,如果在“ -f ”之前
              存在“ -l ”、“ - -color ”或“ -s ”,則禁止它們。

       -g 忽略,為相容UNIX用。

       -i, --inode
              在每個檔案左邊列印 i 節點號(也叫檔案序列號和索引號: file serial number  and  index
              number)。i節點號在每個特定的檔案系統中是唯一的。

       -k, --kilobytes
              如列出檔案大小,則以千位元組KB為單位。

       -l, --format=long, --format=verbose
              除每個檔名外,增加顯示檔案型別、許可權、硬連結數、所    有者名、組名、大小(   byte
              )、及時間資訊(如未指明是 其它時間即指修改時間)。對於6個月以上的檔案或超出未來  1
              小時的檔案,時間資訊中的時分將被年代取代。

              每個目錄列出前,有一行“總塊數”顯示目錄下全部檔案所 佔的磁碟空間。塊預設是 1024 位元
              組;如果設定了 POSIXLY_CORRECT 的環境變數,除非用“ -k ”選項,則預設塊大小是 512  字
              節。每一個硬連結都計入總塊數(因此可能重複計數),這無 疑是個缺點。

       列出的許可權類似於以符號表示(檔案)模式的規範。但是 ls
              在每套許可權的第三個字元中結合了多位( multiple bits ) 的資訊,如下: s 如果設定了
              setuid 位或 setgid 位,而且也設定了相應的可執行位。 S 如果設定了 setuid 位或 setgid
              位,但是沒有設定相應的可執行位。  t  如果設定了 sticky 位,而且也設定了相應的可執行
              位。 T 如果設定了 sticky 位,但是沒有設定相應的可執行位。 x  如果僅僅設定了可執行位
              而非以上四種情況。 - 其它情況(即可執行位未設定)。

       -m, --format=commas
              水平列出檔案,每行儘可能多,相互用逗號和一個空格分隔。

       -n, --numeric-uid-gid
              列出數字化的 UID 和 GID 而不是使用者名稱和組名。

       -o     以長格式列出目錄內容,但是不顯示組資訊。等於使用“   --format=long   --no-group  ”選
              項。提供此選項是為了與其它版本的 ls 相容。

       -p     在每個檔名後附上一個字元以說明該檔案的型別。類似“ -F ”選項但是不 標示可執行檔案。

       -q, --hide-control-chars
              用問號代替檔名中非列印的字元。這是預設選項。

       -r, --reverse
              逆序排列目錄內容。

       -s, --size
              在每個檔名左側輸出該檔案的大小,以        1024         位元組的塊為單位。如果設定了
              POSIXLY_CORRECT 的環境變數,除非用“ -k ”選項,塊大小是 512 位元組。

       -t, --sort=time
              按檔案最近修改時間( i 節點中的 mtime )而不是按檔名字典序排序,新檔案 靠前。

       -u, --time=atime, --time=access, --time=use
              類似選項“ -t ”,但是用檔案最近訪問時間( i 節點中的 atime )取代檔案修 改時間。如果
              使用長格式列出,列印的時間是最近訪問時間。

       -w, --width cols
              假定螢幕寬度是 cols  (  cols  以實際數字取代)列。如未用此選項,預設值是這  樣獲得
              的:如可能先嚐試取自終端驅動,否則嘗試取自環境變數  COLUMNS (如果設 置了的話),都
              不行則取 80 。

       -x, --format=across, --format=horizontal
              多列輸出,橫向排序。

       -A, --almost-all
              顯示除 "." 和 ".." 外的所有檔案。

       -B, --ignore-backups
              不輸出以“ ~ ”結尾的備份檔案,除非已經在命令列中給出。

       -C, --format=vertical
              多列輸出,縱向排序。當標準輸出是終端時這是預設項。使用命令名 dir 和 d 時, 則總是預
              設的。

       -D, --dired
              當採用長格式(“  -l ”選項)輸出時,在主要輸出後,額外列印一行: //DIRED// BEG1 END1
              BEG2 END2 ...

       BEGn 和 ENDn 是無符號整數,記錄每個檔名的起始、結束位置在輸出中的位置(
              位元組偏移量)。這使得 Emacs 易於找到檔名,即使檔名包含空格或換行等非正  常字元也無
              需特異的搜尋。

       如果目錄是遞迴列出的(“ -R ”選項),每個子目錄後列出類似一行:
              //SUBDIRED//  BEG1 END1 ...  【譯註:我測試了 TurboLinux4.0 和 RedHat6.1 ,發現它們
              都是在 “ //DIRED// BEG1... ”之後列出“ //SUBDIRED// BEG1 ... ”,也即只有一個  而不是
              在每個子目錄後都有。而且“ //SUBDIRED// BEG1 ... ”列出的是各個子目 錄名的偏移。】

       -F, --classify, --file-type
              在每個檔名後附上一個字元以說明該檔案的型別。“ * ”表示普通的可執行檔案; “ / ”表示目
              錄;“ @ ”表示符號連結;“ | ”表示FIFOs;“ = ”表示套接字 (sockets) ;什麼也沒有則表示
              普通檔案。

       -G, --no-group
              以長格式列目錄時不顯示組資訊。

       -I, --ignorepattern
              除非在命令列中給定,不要列出匹配 shell 檔名匹配式( pattern ,不是指一般 表示式)的
              檔案。在 shell 中,檔名以 "." 起始的不與在檔名匹配式 (pattern) 開頭的萬用字元匹配。

       -L, --dereference
              列出符號連結指向的檔案的資訊,而不是符號連結本身。

       -N, --literal
              不要用引號引起檔名。

       -Q, --quote-name
              用雙引號引起檔名,非列印字元以 C 語言的方法表示。

       -R, --recursive
              遞迴列出全部目錄的內容。

       -S, --sort=size
              按檔案大小而不是字典序排序目錄內容,大檔案靠前。

       -T, --tabsize cols
              假定每個製表符寬度是 cols 。預設為  8。為求效率,  ls  可能在輸出中使用製表符。  若
              cols 為 0,則不使用製表符。

       -U, --sort=none
              不排序目錄內容;按它們在磁碟上儲存的順序列出。(選項“ -U ”和“ -f ”的不 同是前者不啟
              動或禁止相關的選項。)這在列很大的目錄時特別有用,因為不加排序 能顯著的加快速度。

       -X, --sort=extension
              按副檔名(由最後的 "." 之後的字元組成)的字典序排序。沒有副檔名的先列 出。

       --color[=when]
              指定是否使用顏色區別檔案類別。環境變數 LS_COLORS 指定使用的顏色。如何設定  這個變數
              見 dircolors(1) 。 when 可以被省略,或是以下幾項之一:

       none 不使用顏色,這是預設項。
              auto  僅當標準輸出是終端時使用。 always 總是使用顏色。指定 --color 而且省略 when 時
              就等同於 --color=always 。

       --full-time
              列出完整的時間,而不是使用標準的縮寫。格式如同 date(1) 的預設格式;此格式  是不能改
              變的,但是你可以用 cut(1) 取出其中的日期字串並將結果送至命令 “ date -d ”。

       輸出的時間包括秒是非常有用的。( Unix 檔案系統儲存檔案的時間資訊精確到秒,
              因此這個選項已經給出了系統所知的全部資訊。)例如,當你有一個 Makefile 檔案 不能恰當
              的生成檔案時,這個選項會提供幫助。

GNU 標準選項

       --help 列印用法資訊到標準輸出並順利退出。

       --version
              列印版本資訊到標準輸出並順利退出。

       --     結束選項表。

環境

       變數   POSIXLY_CORRECT   可以決定一組選擇。如果沒有設定此變數,每個製表符的字   符數由變數
       TABSIZE 決定。變數 COLUMNS (當它由一個十進位制整數表示時)決定輸 出的列寬度(同“ -C ”選項
       一起用時)。檔名不得為適應多列輸出而被截斷。變  量  LANG,  LC_ALL,  LC_COLLATE,  LC_CTYPE,
       LC_MESSAGES  及  LC_TIME  仍保持原義。  變數  TZ  給出時區供  ls  輸出相應的時間字串。變數
       LS_COLORS 用以決定是否使用 顏色。

已知錯誤

       在 BSD 系統上,對於從 HP-UX 系統上透過 NFS mount 而來的檔案,“ -s ”選項報 告的大小隻有正確
       值的一半;在  HP-UX 系統上,對於從 BSD 系統上透過 NFS mount 而來的檔案, ls 報告的大小則有
       正確值的兩倍。這是 HP-UX 的一個缺陷造成的,它 也影響 HP-UX 上的 ls 程式。

適合到

       POSIX 1003.2

參見

       dircolors(1)

注意

       本頁描述的是 fileutils-3.16 檔案包中的 ls ,其它版本的可能略有不同。糾錯或添  加(功能)請
       mailto: aeb@cwi.nlaw@mail1.bet1.puv.firagnar@lightside.ddns.org 。本程式的錯誤報告
       請 mailto: fileutils-bugs@gnu.ai.mit.edu

[中文版維護人]

       wangdong <wangdong@163.net>

[中文版最新更新]

       2003.11.22

《中國linux論壇man手冊翻譯計劃》:

       http://cmpp.linuxforum.net

       本頁面中文版由中文 man 手冊頁計劃提供。
       中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh