linux學習 檔案目錄之ls

2021-08-31 15:43:31 字數 4350 閱讀 1864

在linux的學習中,目錄與檔案的管理上,不外在【顯示示屬性】、【拷貝】、【刪除檔案】及【移動檔案或目錄】等等,由亍檔案與目錄的管理在linux當中是很重要的,尤其是每個人自己家目錄的資料也都需要注意管理!因此對於linux檔案與目錄的一些基礎管理知識學習更是不能馬馬虎虎,所以將其記錄於此,以便今後的不時之需!

檔案與目錄的檢視:ls

# ls [-aadffhilnrrst] 目錄名稱

# ls [--color=] 目錄名稱

# ls [--full-time] 目錄名稱

選項不引數:

-a :全部的檔案,連同隱藏檔(開頭為. 的檔案)一起列出來(常用)

-a :全部的檔案,連同隱藏檔,但不包括. 與.. 這兩個目錄

-d :僅列出目錄本身,而不是列出目錄內的檔案資料(常用)

-f :直接列出結果,而不進行排序(ls 缺省會以檔名排序!)

-f :根據檔案、目錄等資訊,給予附加資料結構,例如:*:代表可執行檔案;/:代表目錄;=:代表socket 檔案;|:代表fifo 檔案;

-h :將檔案容量以人類較易讀的方式(例如gb, kb 等等)列出來;

-i :列出inode 號碼

-l :長資料序列出,包噸檔案的屬性不許可權等等資料;(常用)

-n :列出uid 不gid 而非使用者與群組的名稱

-r :將排序結果反向輸出,例如:原本檔名由小到大,反向則為由大到小;

-r :連同子目錄內容一起列出來,等亍該目錄下的所有檔案都會顯示出來;

-s :以檔案容量大小排序,而不是用檔名排序;

-t :依時間排序,而不是用檔名。

--color=never :不要依據檔案特性給予顏色顯示;

--color=always :顯示顏色

--color=auto :讓系統自行依據設定來判斷是否給予顏色

--full-time :以完整時間模式(包噸年、月、日、時、分) 輸出

--time= :輸出access 時間或改變許可權屬性時間(ctime)而非內容變更時間(modification time)

在linux系統當中,這個ls指令可能是最常被執行的吧!因為我們隨時都要知道檔案或者是目錄的相關資訊,不過,我們linux的檔案所記錄的資訊實在是太多了,ls 沒有必要全部都列出來,所以,當你只有下達ls 時,預設顯示的只有:非隱藏檔的檔名、以檔名進行排序及檔名代表的顏色顯示僅此而已。舉例來說,你下達『ls /etc 』之後,叧有經過排序的檔名以及以藍色顯示目錄及白色顯示一般檔案。那如果我還想要加入其他的顯示資訊時,可以加入上頭提到的那些有用的選項呢?舉例來說,我們之前一直用到的-l 這個長串顯示資料內容,以及將隱藏檔也一起列示出來的-a 選項等等。底下則是一些常用的範例,實際試做看看:

範例一:將家目錄下的所有檔案列出來(含屬性與隱藏檔案)

# ls -al ~

total 85

drwxr-x--- 4 root root 4096 sep 24 00:07 [color=blue]. [/color]

drwxr-xr-x 23 root root 4096 sep 22 12:09 [color=blue].. [/color]

-rw------- 1 root root 1474 sep 4 18:27 anaconda-ks.cfg

-rw------- 1 root root 955 sep 24 00:08 .bash_history

-rw-r--r-- 1 root root 24 jan 6 2011 .bash_logout

-rw-r--r-- 1 root root 191 jan 6 2011 .bash_profile

-rw-r--r-- 1 root root 176 jan 6 2011 .bashrc

drwx------ 3 root root 4096 sep 5 10:37 [color=blue].gconf [/color]

-rw-r--r-- 1 root root 42304 sep 4 18:26 install.log

-rw-r--r-- 1 root root 5661 sep 4 18:25 install.log.syslog

# 這個時候你會看到以. 為開頭的幾個檔案,以及目錄檔案(.) (..) .gconf 等等,不過,目錄檔案檔名都是以深藍色顯示,有點不容易看清楚就是了。

範例二:承上題,不顯示顏色,但在檔名末顯示出該檔名代表的型別(type)

# ls -alf --color=never ~

total 85

drwxr-x--- 4 root root 4096 sep 24 00:07 ./

drwxr-xr-x 23 root root 4096 sep 22 12:09 ../

-rw------- 1 root root 1474 sep 4 18:27 anaconda-ks.cfg

-rw------- 1 root root 955 sep 24 00:08 .bash_history

-rw-r--r-- 1 root root 24 jan 6 2011 .bash_logout

-rw-r--r-- 1 root root 191 jan 6 2011 .bash_profile

-rw-r--r-- 1 root root 176 jan 6 2011 .bashrc

drwx------ 3 root root 4096 sep 5 10:37 .gconf/

-rw-r--r-- 1 root root 42304 sep 4 18:26 install.log

-rw-r--r-- 1 root root 5661 sep 4 18:25 install.log.syslog

# 注意看到顯示結果的第一行,嘿嘿~知道為何我們會下達類似./command之類的指令了吧?因為./ 代表的是【目前目錄下】的意思!另外,那個.bashrc 時間僅寫2011,能否知道詳細

時間?

範例三:完整的呈現檔案的修改時間*(modification time)

# ls -al --full-time ~

total 85

drwxr-x--- 4 root root 4096 2008-09-24 00:07:00.000000 +0800[color=blue] . [/color]

drwxr-xr-x 23 root root 4096 2008-09-22 12:09:32.000000 +0800[color=blue] .. [/color]

-rw------- 1 root root 1474 2008-09-04 18:27:10.000000 +0800 anaconda-ks.cfg

-rw------- 1 root root 955 2008-09-24 00:08:14.000000 +0800 .bash_history

-rw-r--r-- 1 root root 24 2007-01-06 17:05:04.000000 +0800 .bash_logout

-rw-r--r-- 1 root root 191 2007-01-06 17:05:04.000000 +0800 .bash_profile

-rw-r--r-- 1 root root 176 2007-01-06 17:05:04.000000 +0800 .bashrc

drwx------ 3 root root 4096 2008-09-05 10:37:49.000000 +0800[color=blue] .gconf [/color]

-rw-r--r-- 1 root root 42304 2008-09-04 18:26:57.000000 +0800 install.log

-rw-r--r-- 1 root root 5661 2008-09-04 18:25:55.000000 +0800 install.log.syslog

# 請仔紳看,上面的【時間】欄位變了喔!變成較為完整的格式。 一般來說,ls -al 僅列出目前短格式的時間,有時不會列出年份,由--full-time 可以查閱到比較正確的完整時間格式!

其實ls 的用法還有徆多,包括查閱檔案所在i-node 號碼的ls -i 選項,以及用來迚行檔案排序的-s 選項,還有用來查閱不同時間的動作的--time=atime 等選項(更多時間說明請參考本章後面touch 的說明)。而這些選項的存在都是因為linux檔案系統記錄了很多有用的資訊的緣故。那麼linux 的檔案系統中,這些不許可權、屬性有關的資料放在**呢?放在i-node裡面。

無論如何,ls 最常被使用到的功能還是那個-l 的選項,為此,很多distribution在預設的情況中,已經將ll (l 的小寫) 設定成為ls -al 的意思了!

後面的看書(鳥哥)學習以及實踐中還會繼續記錄下來,呵呵.....這樣也便於以後檢視嘛!

linux命令學習 檔案目錄之ls命令

ls用來列印出當前目錄的清單,如果ls指定目錄那麼就會顯示指定目錄裡的檔案及資料夾清單。通過ls 命令不僅可以檢視linux資料夾包含的檔案,而且可以檢視檔案許可權 包括目錄 資料夾 檔案許可權 目錄資訊等等。命令格式 ls 選項 目錄名 命令功能 列出目標目錄中所有的子目錄和檔案 常用引數 a 列...

linux命令學習 檔案目錄之cat命令

cat命令的用途是連線檔案或標準輸入並列印。常用來顯示檔案內容,或者將幾個檔案連線起來顯示,或者從標準輸入讀取內容並顯示,它常與重定向符號配合使用。命令格式 cat 選項 檔案 命令功能 1.一次顯示整個檔案 cat filename 2.從鍵盤建立乙個檔案 cat filename 只能建立新檔案...

linux命令學習 檔案目錄之less命令

less工具也是對檔案或其它輸出進行分頁顯示的工具,功能極其強大。less 的用法比起 more 更加的有彈性。在more的時候,沒有辦法向前面翻,只能往後面看,但若使用了 less 時,就可以使用 pageup pagedown 等按鍵的功能來往前往後翻看檔案,更容易用來檢視乙個檔案的內容!除此之...