1. 程式人生 > >Linux命令——ls命令用來顯示目錄中檔案的名字

Linux命令——ls命令用來顯示目錄中檔案的名字

1、引數說明

-a 列出目錄下的所有檔案,包括以 . 開頭的隱含檔案。
-b 把檔名中不可輸出的字元用反斜槓加字元編號(就象在C語言裡一樣)的形式列出。
-c 輸出檔案的 i 節點的修改時間,並以此排序。
-d 將目錄象檔案一樣顯示,而不是顯示其下的檔案。
-e 輸出時間的全部資訊,而不是輸出簡略資訊。
-f -U 對輸出的檔案不排序。
-g 無用。
-i 輸出檔案的 i 節點的索引資訊。
-k 以 k 位元組的形式表示檔案的大小。
-l 列出檔案的詳細資訊。
-m 橫向輸出檔名,並以“,”作分格符。
-n 用數字的 UID,GID 代替名稱。
-o 顯示檔案的除組資訊外的詳細資訊。
-p -F 在每個檔名後附上一個字元以說明該檔案的型別,“*”表示可執行的普通
檔案;“/”表示目錄;“@”表示符號連結;“|”表示FIFOs;“=”表示套
接字(sockets)。
-q 用?代替不可輸出的字元。
-r 對目錄反向排序。
-s 在每個檔名後輸出該檔案的大小。
-t 以時間排序。
-u 以檔案上次被訪問的時間排序。
-x 按列輸出,橫向排序。
-A 顯示除 “.”和“..”外的所有檔案。
-B 不輸出以 “~”結尾的備份檔案。
-C 按列輸出,縱向排序。
-G 輸出檔案的組的資訊。
-L 列出連結檔名而不是連結到的檔案。
-N 不限制檔案長度。
-Q 把輸出的檔名用雙引號括起來。
-R 列出所有子目錄下的檔案。
-S 以檔案大小排序。
-X 以檔案的副檔名(最後一個 . 後的字元)排序。
-1 一行只輸出一個檔案。

--color=no 不顯示彩色檔名
--help 在標準輸出上顯示幫助資訊。
--version 在標準輸出上輸出版本資訊並退出。

2、使用舉例

2.1、ls –a 用來顯示當前目錄中的所有檔案,包含隱藏檔案。

 #ls –a
.                .gnome2             .nautilus
..               .gnome2_private     oracle_rpm
.bash_profile    .gtkrc-1.2-gnome2   tnsnames.ora
.bashrc          .ICEauthority       types.h
   注意隱藏檔案是在檔名字以“.”(英文句號)開頭的檔案。

2.2、ls –l 顯示檔案及其詳細資訊

# ls –l
total 5
-rw-r--r--    1 root     root         1668 Oct 3 2007 anaconda-ks.cfg
drwxr-xr-x    2 root     root         4096 Nov 6 00:04 **aa**

以上所顯示的檔案詳細資訊分別代表什麼呢?
1)、total 5 。代表當前目錄下檔案大小的總和為5K(每個目錄的大小都按4K,即4096算)
2)、drwxr-xr-x 中的第1個字元有3種情況:“-”表示普通檔案,“d”代表目錄,“l”代表連線檔案,“b”代表裝置檔案。
3)、drwxr-xr-x 中後面的9個字元每3個為一組,分別代表檔案所有者

檔案所有者所在使用者組其它使用者對檔案擁有的許可權。每組中3個字元分別代表讀、寫、執行的許可權,若沒有其中的任何一個許可權則用“-”表示。執行的許可權有兩個字元可選“x”代表可執行,“s”代表套介面檔案。
4)、緊接著的數字2代表 “aa”這個目錄下的目錄檔案數目(這個數目=隱藏目錄數目+普通目錄數目),如果這個aa是個普通檔案,2就代表這個檔案有2個別名(這個檔案被人建立了一個硬連結檔案)。我們進入“aa”目錄用命令 ls –al (為了看到隱藏檔案我們加上-a這個引數)。

# ls -al
total 8
drwxr-xr-x    2 root    root         4096 Nov 6 00:04 .
drwxr-x---   14 root     root         4096 Nov 6 00:04 ..
上面的第3行中的2代表當前目錄中有子目錄2個,即.和..
上面的第4行中的14代表這個目錄的上一層目錄中有14個子目錄。)
再接下來的root代表這個檔案(目錄)的屬主為 使用者root
再接下來的root代表這個檔案(目錄)所屬的使用者組為 組root
4096 代表檔案的大小(位元組數),目錄的大小總是為4096位元組。
Nov 6 00:04 代表檔案(目錄)的修改時間。

5)、aa代表檔案(目錄)的名字。

2.3、其它比較常用的引數

   -t 按最後修改時間排序。
   -S 按檔案大小排序。(大寫的S)
   -r 排序時按倒序。
   -h 顯示檔案大小時增加可讀性 (例:1K 234M 2G)

舉例:

ls -tl --time-style=full-iso sshd
ls -ctl --time-style=long-iso

2.4、檔名顏色的含義

開啟/etc/bashrc, 加入如下一行:

alias ls="ls --color"

下次啟動bash時就可以像在Slackware裡那樣顯示彩色的目錄列表了。其中檔名中字型顏色(從暖色系到冷色系次序)的含義如下:

1. 紅色-->壓縮檔案
2. 綠色-->可執行檔案
4. 青色(淺藍色)-->連結檔案
5.. 藍色-->目錄
5. 灰色-->其他檔案

舉例:
紅色字(白底)代表tar包檔案。 例:這裡寫圖片描述
水紅色字(白底)代表圖象檔案。 例:這裡寫圖片描述
黃色字(白底)代表裝置檔案。 例:這裡寫圖片描述
綠色字(白底)代表可執行檔案。 例:這裡寫圖片描述
青色字(白底)代表連結檔案。 例:這裡寫圖片描述
藍色字(白底)代表目錄檔案。 例:這裡寫圖片描述
預設色字(白底)代表普通檔案。 例:這裡寫圖片描述

2.5、與管道結合使用

只列出子目錄

ls -F | grep /aliassub="lsF|grep/”(linux)
ls -l | grep “^d” 或者 ls -lL | grep “^d” (Solaris)

計算當前目錄下的檔案數和目錄數

ls -l * |grep "^-"|wc -l ---- to count files
ls -l * |grep "^d"|wc -l ----- to count dir