一、認識linux文件
認識linux下的文件需要先學習命令:ls。
該命令用於顯示指定目錄下的內容,其中最常用的參數有:
-l顯示目錄和文件的完整屬性信息
-a顯示所有文件和目錄,包含隱藏文件和目錄。
在linux中,任何目錄下都隱藏着“.”和“..”文件,同時如果文件名或目錄前面帶有點號“.”,則表示該文件或目錄為隱藏文件,如果ls不帶參數a則不會顯示出來。
在根目錄下輸入:ls -al 命令,可以看到該目錄下所有文件和目錄及它們的文件屬性
1)第一欄是文件屬性,共有10個屬性,每一位代表一個屬性。
第1位屬性代表這個文件是目錄、文件、鏈接、設備中的哪一類:
# d:表示目錄 #
# -:表示普通文件 #
# l:表示鏈接文件 #
# b:表示設備文件中可供存儲的接口設備 #
# c:表示設備文件中的串行端口設備,比如鼠標、鍵盤等 #
第2位到第十位共9個屬性,分為3組,均以rwx形式組合,其中:
# r:代表該文件可讀 #
# w:代表該文件可寫 #
# x:代表該文件可執行 #
如果不具備某屬性,則對應的字母換成“-”
范例【1】某文件只有讀寫能力,沒有執行能力,則表示為“rw-”
這三組屬性分別代表文件擁有者的權限、文件所屬組的權限、其他用戶的權限。
范例【2】“rwxrw-r--”表示該文件的擁有者對該文件可讀可寫可執行,該文件所在組的成員對文件有讀寫權限,其他用戶對該文件只能讀。
注意(PS):X屬性對目錄有特殊含義,表示是否可以進入該目錄的權限。
范例【3】config目錄,屬性為“drwx------”表示只有root用戶能進入,而所在組其他用戶均不能進入。
2)第二欄表示鏈接占用的節點(inode),新文件一般都為1,建立硬鏈接后此數會增加。如果是目錄,則指目錄中包含的子目錄數,空目錄為2,因為空目錄中至少包含“.”和“..”目錄。
3)第三欄表示該文件或目錄的擁有者。
4)第四欄表示該文件所屬的群組。
5)第五欄表示這個文件的大小。
6)第六欄表示改文件最新修改時間。
7)第七欄表示該文件的文件名。
二、認識linux目錄
linux中的目錄呈現樹狀結構,帶有分支,也就是各級子目錄,其作用就是存放文件,相當於Windows下我們所熟悉的文件夾,在linux下,安裝完成后會創建一系列的目錄,用於存放特定的文件。linux中的根目錄為“/”,和Windows不同,沒有盤符的概念。
linux中比較重要的目錄:
/etc:用於保存系統數據文件,啟動文件和腳本等
/bin:存放普通用戶常用的命令
/sbin:存放系統管理常用命令
/boot:存放系統核心文件
/dev:存放與設備有關的文件
/lib:存放用於編譯某些程序時要用的函數庫
/usr: 用於存放用戶安裝的應用程序
/var:用於存放系統數據文件
/root:系統管理員(root用戶)的“家”目錄
/home:用於存放普通用戶的“家”目錄的目錄
/media:用於系統自動掛載存儲設備時(比如光驅、U盤)使用的目錄
/mnt: 用於掛載設備時建議使用的目錄(目前很多版本的linux都使用自動掛載,所以該目錄很少用,被media取代)
注意(PS):
1)每個目錄中還有兩個特殊的目錄,“.”和“..”目錄。
2)目錄的表示方法是路徑,有兩種:絕對路徑和相對路徑
絕對路徑:寫法一定是從根目錄“/”開始。
相對路徑:根據當前所處目錄來表示目標目錄。
“.”目錄表示當前目錄。
“..” 目錄表示當期目錄的上一層目錄。
范例【1】用絕對路徑表示根目錄下的etc目錄的test目錄下的file文件:
/etc/test/file
范例【2】我們當前在test目錄下,那用相對路徑表示etc目錄為:
../etc