1.文件系統(tǒng)
(1)文件和目錄被組織成一個(gè)單根倒置樹結(jié)構(gòu)
(2)文件系統(tǒng)從根錄下開始,用“/”表示
(3)根文件系統(tǒng)(rootfs):root filesystem
(4)文件名稱區(qū)分大小寫
(5)以.開頭的文件為隱藏文件
(6)路徑分隔的 /
(7)文件有兩類數(shù)據(jù):
元數(shù)據(jù):metadata
數(shù)據(jù):data
(8)文件系統(tǒng)分層結(jié)構(gòu):LSB Linux Standard Base
(9)FHS: (Filesystem Hierarchy Standard)
2.文件名規(guī)則
文件名最長(zhǎng)255個(gè)字節(jié)
? 包括路徑在內(nèi)文件名稱最長(zhǎng)4095個(gè)字節(jié)
? 藍(lán)色-->目錄 綠色-->可執(zhí)行文件 紅色-->壓縮文
件 淺藍(lán)色-->鏈接文件 灰色-->其他文件
? 除了斜杠和NUL,所有字符都有效.但使用特殊字符的目錄名和
文件不推薦使用伍俘,有些字符需要用引號(hào)來(lái)引用它們府瞄。
? 標(biāo)準(zhǔn)Linux文件系統(tǒng)(如ext4)署拟,文件名稱大小寫敏感近忙。例如
:MAIL, Mail, mail, mAiL
3.文件系統(tǒng)結(jié)構(gòu)
- /boot:引導(dǎo)文件存放目錄,內(nèi)核文件(vmlinuz)凹联、引導(dǎo)加載器
(bootloader, grub)都存放于此目錄 - /bin:供所有用戶使用的基本命令成艘;不能關(guān)聯(lián)至獨(dú)立分區(qū)拇砰,
OS啟動(dòng)即會(huì)用到的程序 - /sbin:管理類的基本命令;不能關(guān)聯(lián)至獨(dú)立分區(qū)狰腌,OS啟動(dòng)即
會(huì)用到的程序 - /lib:?jiǎn)?dòng)時(shí)程序依賴的基本共享庫(kù)文件以及內(nèi)核模塊文件
(/lib/modules) - /lib64:專用于x86_64系統(tǒng)上的輔助共享庫(kù)文件存放位置
- /etc:配置文件目錄
- /home/USERNAME:普通用戶家目錄
- /root:管理員的家目錄
- /media:便攜式移動(dòng)設(shè)備掛載點(diǎn)
- /mnt:臨時(shí)文件系統(tǒng)掛載點(diǎn)
- /dev:設(shè)備文件及特殊文件存儲(chǔ)位置
b: block device除破,隨機(jī)訪問
c: character device,線性訪問 - /opt:第三方應(yīng)用程序的安裝位置
- /srv:系統(tǒng)上運(yùn)行的服務(wù)用到的數(shù)據(jù)
- /tmp:臨時(shí)文件存儲(chǔ)位置
- /proc: 用于輸出內(nèi)核與進(jìn)程信息相關(guān)的虛擬文件系統(tǒng)
- /sys:用于輸出當(dāng)前系統(tǒng)上硬件設(shè)備相關(guān)信息虛擬文件系統(tǒng)
- /selinux: security enhanced Linux琼腔,selinux相關(guān)的安全策
略等信息的存儲(chǔ)位置
4.Linux上的應(yīng)用程序的組成部分
(1) 二進(jìn)制程序:
/bin, /sbin, /usr/bin, /usr/sbin,
/usr/local/bin, /usr/local/sbin
(2) 庫(kù)文件:
/lib, /lib64, /usr/lib, /usr/lib64,
/usr/local/lib, /usr/local/lib64
(3) 配置文件:
/etc, /etc/DIRECTORY, /usr/local/etc
(4)幫助文件:
/usr/share/man, /usr/share/doc,
/usr/local/share/man, /usr/local/share/doc
(5)CtenOs7變化
- /bin 和 /usr/bin
- /sbin 和 /usr/sbin
- /lib 和/usr/lib
- /lib64 和 /usr/lib64
6.pwd:顯示當(dāng)前工作目錄
? 每個(gè)shell和系統(tǒng)進(jìn)程都有一個(gè)當(dāng)前的工作目錄
? CWD:current work directory
? 顯示當(dāng)前shell CWD的絕對(duì)路徑
pwd: printing working directory
-P 顯示真實(shí)物理路徑
-L 顯示鏈接路徑(默認(rèn))
7.絕對(duì)和相對(duì)路徑
(1)絕對(duì)路徑
以正斜杠開始
完整的文件的位置路徑
可用于任何想指定一個(gè)文件名的時(shí)候
(2)相對(duì)路徑名
不以斜線開始
指定相對(duì)于當(dāng)前工作目錄或某目錄的位置
可以作為一個(gè)簡(jiǎn)短的形式指定一個(gè)文件名
? 基名:basename
? 目錄名:dirname
8.更改目錄
(1)cd 改變目錄
使用絕對(duì)或相對(duì)路徑:
cd /home/wang/
cd home/wang
(2)切換至父目錄: cd ..
(3)切換至當(dāng)前用戶主目錄: cd
(4)切換至以前的工作目錄: cd-
? 選項(xiàng):-P
? 相關(guān)的環(huán)境變量:
PWD:當(dāng)前目錄路徑
OLDPWD:上一次目錄路徑
9.文件通配符
? * 匹配零個(gè)或多個(gè)字符
? ? 匹配任何單個(gè)字符
? ~ 當(dāng)前用戶家目錄
? ~mage 用戶mage家目錄
? ~+ 當(dāng)前工作目錄
? ~- 前一個(gè)工作目錄
? [0-9] 匹配數(shù)字范圍
? [a-z]:字母
? [A-Z]:字母
? [wang] 匹配列表中的任何的一個(gè)字符
? [^wang] 匹配列表中的所有字符以外的字符
? 預(yù)定義的字符類:#man 7 glob
[:digit:]:任意數(shù)字瑰枫,相當(dāng)于0-9
[:lower:]:任意小寫字母
[:upper:]: 任意大寫字母
[:alpha:]: 任意大小寫字
[:alnum:]:任意數(shù)字或字母
[:blank:]:水平空白字符
[:space:]:水平或垂直空白字符
[:punct:]:標(biāo)點(diǎn)符號(hào)
[:print:]:可打印字符
[:cntrl:]:控制(非打印)字符
[:graph:]:圖形字符
[:xdigit:]:十六進(jìn)制字符
10.硬鏈接
(本質(zhì)是給一個(gè)文件多個(gè)文件名,目錄不支持硬鏈接光坝,刪除任何一個(gè)尸诽,其他名稱不受影響)
(1)創(chuàng)建硬鏈接會(huì)增加額外的記錄項(xiàng)以引用文件
(2)對(duì)應(yīng)于同一文件系統(tǒng)上一個(gè)物理文件
(3)每個(gè)目錄引用相同的inode號(hào)
(4)創(chuàng)建時(shí)鏈接數(shù)遞增
(5)刪除文件時(shí):
- rm命令遞減計(jì)數(shù)的鏈接
- 文件要存在,至少有一個(gè)鏈接數(shù)
- 當(dāng)鏈接數(shù)為零時(shí)盯另,該文件被刪除
(6)不能跨越驅(qū)動(dòng)器或分區(qū)
(7) 語(yǔ)法:
ln filename [linkname ]
11.符號(hào)(或軟)鏈接(相就可以當(dāng)于快捷方式性含,只要路徑)
(1)一個(gè)符號(hào)鏈接指向另一個(gè)文件
(2)ls - l的 顯示鏈接的名稱和引用的文件
(3)一個(gè)符號(hào)鏈接的內(nèi)容是它引用文件的名稱
(4)可以對(duì)目錄進(jìn)行
(5)可以跨分區(qū)
(6)指向的是另一個(gè)文件的路徑;其大小為指向的路徑字符串的長(zhǎng)度鸳惯;不增加或減少目標(biāo)文件inode的引用計(jì)數(shù)商蕴;
(7)語(yǔ)法:
ln -s filename [linkname]