Linux 常用命令之 - ls 命令
命令介紹

英文原意:list directory contents
功能描述:用來顯示指定目錄內(nèi)的文件列表,可通過選項控制顯示內(nèi)容的詳細(xì)程度和顏色高亮等
命令格式

所在路徑:
????/bin/ls? ? ? ?? ? (RedHat7之前)?
????/usr/bin/ls????(RedHat7之后,包含7)
?
命令格式:ls [OPTION]... [FILE]...
選項分為長格式和短格式,日常大部分用的都是短格式,由一個短杠和一個字母組成[-a],長格式則是由兩個短杠和多個字符串組成[--all 或 --almost-all]
?
選項詳解與案例展示

1. [-a] 選項
長短格式對照:[-a] == [--all]
顯示所有文件,包含以 . 開頭的隱藏文件以及特殊目錄

2.?[-A]?選項
長短格式對照:[-A] == [--almost-all]
顯示所有文件,包含以 . 開頭的隱藏文件,但不顯示特殊文件 . 和 ..

注意:ls -a?命令下面顯示的 . 和 .. 兩個特殊文件功能分別是
.? ? ?#代表當(dāng)前所在目錄
..? ??#代表當(dāng)前所在目錄的父目錄,即上一級目錄
?
3.?[-l]?選項
長短格式對照:[-l] == [--format=long]
用長格式顯示當(dāng)前目錄下文件的詳細(xì)信息

顯示內(nèi)容中總共分為七列信息,分別是:
第一列:用來表示文件類型和文件權(quán)限
第二列:意為引用計數(shù)
普通文件的引用計數(shù)大于1時,代表該文件存在硬鏈接
目錄文件的引用計數(shù)至少是2,代表目錄內(nèi)存在幾個子目錄(.和..特殊目錄也是目錄)
第三列:文件所有者的權(quán)限(屬主權(quán)限)
第四列:文件所屬組的權(quán)限(屬組權(quán)限)
第五列:文件大小,默認(rèn)以字節(jié)為單位顯示,可以結(jié)合?-h?選項用較合適的單位顯示
第六列:文件創(chuàng)建時間或者最近一次訪問時間,時間比較近時顯示順序為{月 日 時間},時間較遠(yuǎn)時,則僅顯示年份
第七列:文件名
?
4.?[-d]?選項
長短格式對照:[-d] == [--directory]
顯示目錄文件本身的信息,不在顯示目錄內(nèi)的文件列表,一般結(jié)合-l使用

5.?[-h]?選項
長短格式對照:[-h] == [--human-readable]
在顯示文件詳細(xì)信息時,使用 -h 可以讓文件大小按照適合人類讀取習(xí)慣的方式顯示{即合理的單位顯示文件大小}

6.?[-i]?選項
長短格式對照:[-i] == [--inode]
顯示文件時,同時顯示文件的 索引節(jié)點號(inode號)
每個文件前邊的數(shù)字即為文件的索引節(jié)點號(inode號),每一個?inode號代表一個文件

7. [-s] 選項
長短格式對照:[-s] == [--size]
顯示每個文件占用的硬盤空間大小

由于?Linux?系統(tǒng)中絕大多數(shù)分區(qū)的?data block?都是 4k ,而且?data block?塊具有獨占性,導(dǎo)致一個文件的大小和改文件實際占用的硬盤是有區(qū)別的。
?
8. [-F] 選項
長短格式對照:[-F] == [--classify]
顯示文件列表時,為每一個特殊文件在文件名結(jié)尾處追加一個符號,用來表示具體某種文件類型。

* 代表具有可執(zhí)行權(quán)限的普通文件
/ 代表目錄文件
@ 代表符號鏈接文件(軟鏈接)
| 代表管道符文件
= 代表socket套接字文件
啥也沒標(biāo)記代表普通文件
?
9. [--color] 選項
長短格式對照:[--color] == [無]
在終端上顯示文件時,為不同類型文件附著不同的顏色

藍(lán)色:目錄文件
紅色:壓縮包文件等
天藍(lán):符號鏈接文件
?
可以人為控制顯示結(jié)果中的顏色
--color=never??表示輸出結(jié)果時沒有顏色
--color=auto? 表示按照文件類型自動顯示顏色
--color=always?表示輸出內(nèi)容始終有顏色(多數(shù)情況與auto相同)
?
10. ls 命令的相關(guān)別名

l.?代表顯示目錄下所有的隱藏文件
ll?代表顯示目錄下文件時,使用長格式顯示文件詳情
ls?代表顯示目錄下文件時,為不同類型的文件附著不同的顏色
?
11. ls 命令結(jié)合通配符實現(xiàn)包含匹配顯示

*????匹配任意長度的任意字符(包含空)
?????匹配長度為一的任意字符(即匹配一個任意字符)
[]????匹配括號內(nèi)的任意一個字符,不連續(xù)的的字符串可以寫在一起,連續(xù)的字符串需要用 - 作為連接符,比如?[a-f]?代表匹配?a?到?f?之間的任意一個字符。
總結(jié)

ls?命令的大部分選項在混合使用時是沒有先后排列順序要求的,但如果選項后面可以跟其他參數(shù)時,選項要單獨聲明,例如:ls --color=auto
還可以使用別名完成命令和選項的合體,形成新的別名命令,減少使用難度,提高使用效率。
?