.\" Copyright Andries Brouwer, Ragnar Hojland Espinosa and A. Wik, 1998. .\" .\" This file may be copied under the conditions described .\" in the LDP GENERAL PUBLIC LICENSE, Version 1, September 1998 .\" that should have been distributed together with this file. .\" .TH LS 1 "November 1998" "GNU fileutils 4.0" .SH NAME ls, dir, vdir \- 列目錄內容 .SH 提要 ls [選項] [文件名...] .sp POSIX 標準選項: .B "[-CFRacdilqrtu1]" .SH GNU 選項 (短格式): .B [-1abcdfgiklmnopqrstuxABCDFGLNQRSUX] .B [-w cols] [-T cols] [-I pattern] .B [--full-time] .B [--format={long,verbose,commas,across,vertical,single-column}] .B [--sort={none,time,size,extension}] .B [--time={atime,access,use,ctime,status}] .B [--color[={none,auto,always}]] .B [--help] .B [--version] .B [--] .SH 描述( DESCRIPTION ) 程序ls先列出非目錄的文件項,然後是每一個目錄中的\(lq可顯示\(rq文件。如果 沒有選項之外的參數【譯註:即文件名部分爲空】出現,缺省爲 "." (當前目錄)。 選項\(lq -d \(rq使得目錄與非目錄項同樣對待。除非\(lq -a \(rq 選項出現,文 件名以\(lq.\(rq開始的文件不屬\(lq可顯示\(rq文件。 以當前目錄爲準,每一組文件(包括非目錄文件項,以及每一內含文件的目錄)分 別按文件名比較順序排序。如果\(lq -l \(rq選項存在,每組文件前顯示一摘要行: 給出該組文件長度之和(以 512 字節爲單位)。 輸出是到標準輸出( stdout )。除非以\(lq -C \(rq選項要求按多列輸出,輸出 將是一行一個。然而,輸出到終端時,單列輸出或多列輸出是不確定的。可以分別 用選項\(lq -1 \(rq 或\(lq -C \(rq來強制按單列或多列輸出。 .PP POSIX 選項 .TP .B "\-C" 多列輸出,縱向排序。 .TP .B "\-F" 每個目錄名加\(lq / \(rq後綴,每個 FIFO 名加\(lq | \(rq後綴, 每個可運行名加\(lq * \(rq後綴。 .TP .B "\-R" 遞歸列出遇到的子目錄。 .TP .B "\-a" 列出所有文件,包括以 "." 開頭的隱含文件。 .TP .B "\-c" 使用\(lq狀態改變時間\(rq代替\(lq文件修改時間\(rq爲依據來排序 (使用\(lq -t \(rq選項時)或列出(使用\(lq -l \(rq選項時)。 .TP .B "\-d" 將目錄名象其它文件一樣列出,而不是列出它們的內容。 .TP .B "\-i" 輸出文件前先輸出文件系列號(即 i 節點號: i-node number)。 -l 列出(以單列格式)文件模式( file mode ),文件的鏈 接數,所有者名,組名,文件大小(以字節爲單位),時間信 息,及文件名。缺省時,時間信息顯示最近修改時間;可以以 選項\(lq -c \(rq和\(lq -u \(rq選擇顯示其它兩種時間信息。對於設 備文件,原先顯示文件大小的區域通常顯示的是主要和次要的 號(majorand minor device numbers)。 .TP .B "\-q" 將文件名中的非打印字符輸出爲問號。(對於到終端的輸出這是缺省的。) .TP .B "\-r" 逆序排列。 .TP .B "\-t" 按時間信息排序。 .TP .B "\-u" 使用最近訪問時間代替最近修改時間爲依據來排序(使用 \(lq -t \(rq選項時)或列出(使用\(lq -l \(rq選項時)。 .TP .B "\-1" 單列輸出。 .SH GNU 細節 如果標準輸出是終端,將多列輸出(縱向排序)。 .TP dir ( 也被安裝爲命令 d ) 等同於\(lq ls -C \(rq;即,文件 缺省是多列輸出,縱向排序。vdir ( 也被安裝爲命令 v ) 等同於\(lq ls -l \(rq; 即,文件缺省是按長格式輸出。 .SH GNU 選項 .B "-1, --format=single-column" 一行輸出一個文件(單列輸出)。如標準輸出不是到終端, 此選項就是缺省選項。 .TP .B "-a, --all" 列出目錄中所有文件,包括以\(lq.\(rq開頭的文件。 .TP .B "-b, --escape" 把文件名中不可輸出的字符用反斜槓加字符編號(就象在 C 語言裏一樣)的形式列出。 .TP .B "-c, --time=ctime, --time=status" 按文件狀態改變時間(i節點中的ctime)排序並輸出目錄內 容。如採用長格式輸出(選項\(lq-l\(rq),使用文件的狀態改 變時間取代文件修改時間。【譯註:所謂文件狀態改變(i節 點中以ctime標誌),既包括文件被修改,又包括文件屬性( 如所有者、組、鏈接數等等)的變化】 .TP .B "-d, --directory" 將目錄名象其它文件一樣列出,而不是列出它們的內容。 .TP .B "-f" 不排序目錄內容;按它們在磁盤上存儲的順序列出。同時啓 動\(lq -a \(rq選項,如果在\(lq -f \(rq之前存在\(lq -l \(rq、\(lq - -color \(rq或\(lq -s \(rq,則禁止它們。 .TP .B "-g" 忽略,爲兼容UNIX用。 .TP .B "-i, --inode" 在每個文件左邊打印 i 節點號(也叫文件序列號和索引號: file serial number and index number)。i節點號在每個特定的文件系統中是唯一的。 .TP .B "-k, --kilobytes" 如列出文件大小,則以千字節KB爲單位。 .TP .B "-l, --format=long, --format=verbose" 除每個文件名外,增加顯示文件類型、權限、硬鏈接數、所 有者名、組名、大小( byte )、及時間信息(如未指明是 其它時間即指修改時間)。對於6個月以上的文件或超出未來 1 小時的文件,時間信息中的時分將被年代取代。 每個目錄列出前,有一行\(lq總塊數\(rq顯示目錄下全部文件所 佔的磁盤空間。塊默認是 1024 字節;如果設置了 POSIXLY_CORRECT 的環境變量,除非用\(lq -k \(rq選項,則默認塊大小是 512 字 節。每一個硬鏈接都計入總塊數(因此可能重複計數),這無 疑是個缺點。 .TP 列出的權限類似於以符號表示(文件)模式的規範。但是 ls 在每套權限的第三個字符中結合了多位( multiple bits ) 的信息,如下: s 如果設置了 setuid 位或 setgid 位,而且也設置了相應的可執行位。 S 如果設置了 setuid 位或 setgid 位,但是沒有設置相應的可執行位。 t 如果設置了 sticky 位,而且也設置了相應的可執行位。 T 如果設置了 sticky 位,但是沒有設置相應的可執行位。 x 如果僅僅設置了可執行位而非以上四種情況。 - 其它情況(即可執行位未設置)。 .TP .B "-m, --format=commas" 水平列出文件,每行儘可能多,相互用逗號和一個空格分隔。 .TP .B "-n, --numeric-uid-gid" 列出數字化的 UID 和 GID 而不是用戶名和組名。 .TP .B "-o" 以長格式列出目錄內容,但是不顯示組信息。等於使用\(lq --format=long --no-group \(rq選項。提供此選項是爲了與其它版本的 ls 兼容。 .TP .B "-p" 在每個文件名後附上一個字符以說明該文件的類型。類似\(lq -F \(rq選項但是不 標示可執行文件。 .TP .B "-q, --hide-control-chars" 用問號代替文件名中非打印的字符。這是缺省選項。 .TP .B "-r, --reverse" 逆序排列目錄內容。 .TP .B "-s, --size" 在每個文件名左側輸出該文件的大小,以 1024 字節的塊爲單位。如果設置了 POSIXLY_CORRECT 的環境變量,除非用\(lq -k \(rq選項,塊大小是 512 字節。 .TP .B "-t, --sort=time" 按文件最近修改時間( i 節點中的 mtime )而不是按文件名字典序排序,新文件 靠前。 .TP .B "-u, --time=atime, --time=access, --time=use" 類似選項\(lq -t \(rq,但是用文件最近訪問時間( i 節點中的 atime )取代文件修 改時間。如果使用長格式列出,打印的時間是最近訪問時間。 .TP .B "-w, --width cols" 假定屏幕寬度是 cols ( cols 以實際數字取代)列。如未用此選項,缺省值是這 樣獲得的:如可能先嚐試取自終端驅動,否則嘗試取自環境變量 COLUMNS (如果設 置了的話),都不行則取 80 。 .TP .B "-x, --format=across, --format=horizontal" 多列輸出,橫向排序。 .TP .B "-A, --almost-all" 顯示除 "." 和 ".." 外的所有文件。 .TP .B "-B, --ignore-backups" 不輸出以\(lq ~ \(rq結尾的備份文件,除非已經在命令行中給出。 .TP .B "-C, --format=vertical" 多列輸出,縱向排序。當標準輸出是終端時這是缺省項。使用命令名 dir 和 d 時, 則總是缺省的。 .TP .B "-D, --dired" 當採用長格式(\(lq -l \(rq選項)輸出時,在主要輸出後,額外打印一行: //DIRED// BEG1 END1 BEG2 END2 ... .TP BEGn 和 ENDn 是無符號整數,記錄每個文件名的起始、結束位置在輸出中的位置( 字節偏移量)。這使得 Emacs 易於找到文件名,即使文件名包含空格或換行等非正 常字符也無需特異的搜索。 .TP 如果目錄是遞歸列出的(\(lq -R \(rq選項),每個子目錄後列出類似一行: //SUBDIRED// BEG1 END1 ... 【譯註:我測試了 TurboLinux4.0 和 RedHat6.1 ,發現它們都是在 \(lq //DIRED// BEG1... \(rq之後列出\(lq //SUBDIRED// BEG1 ... \(rq,也即只有一個 而不是在每個子目錄後都有。而且\(lq //SUBDIRED// BEG1 ... \(rq列出的是各個子目 錄名的偏移。】 .TP .B "-F, --classify, --file-type" 在每個文件名後附上一個字符以說明該文件的類型。\(lq * \(rq表示普通的可執行文件; \(lq / \(rq表示目錄;\(lq @ \(rq表示符號鏈接;\(lq | \(rq表示FIFOs;\(lq = \(rq表示套接字 (sockets) ;什麼也沒有則表示普通文件。 .TP .B "-G, --no-group" 以長格式列目錄時不顯示組信息。 .TP .B "-I, --ignorepattern" 除非在命令行中給定,不要列出匹配 shell 文件名匹配式( pattern ,不是指一般 表達式)的文件。在 shell 中,文件名以 "." 起始的不與在文件名匹配式 (pattern) 開頭的通配符匹配。 .TP .B "-L, --dereference" 列出符號鏈接指向的文件的信息,而不是符號鏈接本身。 .TP .B "-N, --literal" 不要用引號引起文件名。 .TP .B "-Q, --quote-name" 用雙引號引起文件名,非打印字符以 C 語言的方法表示。 .TP .B "-R, --recursive" 遞歸列出全部目錄的內容。 .TP .B "-S, --sort=size" 按文件大小而不是字典序排序目錄內容,大文件靠前。 .TP .B "-T, --tabsize cols" 假定每個製表符寬度是 cols 。缺省爲 8。爲求效率, ls 可能在輸出中使用製表符。 若 cols 爲 0,則不使用製表符。 .TP .B "-U, --sort=none" 不排序目錄內容;按它們在磁盤上存儲的順序列出。(選項\(lq -U \(rq和\(lq -f \(rq的不 同是前者不啓動或禁止相關的選項。)這在列很大的目錄時特別有用,因爲不加排序 能顯著的加快速度。 .TP .B "-X, --sort=extension" 按文件擴展名(由最後的 "." 之後的字符組成)的字典序排序。沒有擴展名的先列 出。 .TP .B "--color[=when]" 指定是否使用顏色區別文件類別。環境變量 LS_COLORS 指定使用的顏色。如何設置 這個變量見 dircolors(1) 。 when 可以被省略,或是以下幾項之一: .TP none 不使用顏色,這是缺省項。 auto 僅當標準輸出是終端時使用。 always 總是使用顏色。指定 --color 而且省略 when 時就等同於 --color=always 。 .TP .B "--full-time" 列出完整的時間,而不是使用標準的縮寫。格式如同 date(1) 的缺省格式;此格式 是不能改變的,但是你可以用 cut(1) 取出其中的日期字串並將結果送至命令 \(lq date -d \(rq。 .TP 輸出的時間包括秒是非常有用的。( Unix 文件系統儲存文件的時間信息精確到秒, 因此這個選項已經給出了系統所知的全部信息。)例如,當你有一個 Makefile 文件 不能恰當的生成文件時,這個選項會提供幫助。 .SH GNU 標準選項 .TP .B "--help" 打印用法信息到標準輸出並順利退出。 .TP .B "--version" 打印版本信息到標準輸出並順利退出。 .TP .B "--" 結束選項表。 .SH 環境 變量 POSIXLY_CORRECT 可以決定一組選擇。如果沒有設置此變量,每個製表符的字 符數由變量 TABSIZE 決定。變量 COLUMNS (當它由一個十進制整數表示時)決定輸 出的列寬度(同\(lq -C \(rq選項一起用時)。文件名不得爲適應多列輸出而被截斷。變 量 LANG, LC_ALL, LC_COLLATE, LC_CTYPE, LC_MESSAGES 及 LC_TIME 仍保持原義。 變量 TZ 給出時區供 ls 輸出相應的時間字串。變量 LS_COLORS 用以決定是否使用 顏色。 .SH 已知錯誤 在 BSD 系統上,對於從 HP-UX 系統上通過 NFS mount 而來的文件,\(lq -s \(rq選項報 告的大小隻有正確值的一半;在 HP-UX 系統上,對於從 BSD 系統上通過 NFS mount 而來的文件, ls 報告的大小則有正確值的兩倍。這是 HP-UX 的一個缺陷造成的,它 也影響 HP-UX 上的 ls 程序。 .SH 適合到 POSIX 1003.2 .SH 參見 dircolors(1) .SH 注意 本頁描述的是 fileutils-3.16 文件包中的 ls ,其它版本的可能略有不同。糾錯或添 加(功能)請 mailto: aeb@cwi.nl 和 aw@mail1.bet1.puv.fi 及 ragnar@lightside.ddns.org 。本程序的錯誤報告請 mailto: fileutils-bugs@gnu.ai.mit.edu 。 .SH "[中文版維護人]" .B wangdong .SH "[中文版最新更新]" .B 2003.11.22 .SH "《中國linux論壇man手冊翻譯計劃》:" .BI http://cmpp.linuxforum.net .SH "跋" .br 本頁面中文版由中文 man 手冊頁計劃提供。 .br 中文 man 手冊頁計劃:\fBhttps://github.com/man-pages-zh/manpages-zh\fR