1、描述Linux發(fā)行版的系統(tǒng)目錄名稱命名規(guī)則以及用途
2、描述文件的元數(shù)據(jù)信息有哪些酪耕,分別表示什么含義递鹉,如何查看?如何修改文件的時(shí)間戳信息塞关?
3匿醒、總結(jié)軟連接和硬連接區(qū)別,并用實(shí)例操作說明。
4轩娶、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關(guān)示例演示影晓。
5镰吵、復(fù)制/etc/profile至/tmp/目錄,用查找替換命令刪除/tmp/profile文件中的行首的空白字符
6挂签、在vim中設(shè)置tab縮進(jìn)為4個(gè)字符
1疤祭、描述Linux發(fā)行版的系統(tǒng)目錄名稱命名規(guī)則以及用途
文件名嚴(yán)格區(qū)分字符大小寫;目錄也是文件饵婆,在同一路徑下勺馆,文件不能重名;支持使用除/以外的任意字符侨核;最長(zhǎng)不能超過255個(gè)字符草穆。
/:根目錄
/bin:存放所有用戶可用的基本命令程序文件
/sbin:存放供系統(tǒng)管理使用的工具程序
/boot:引導(dǎo)加載器必須用到的靜態(tài)文件:kernel, initramfs(initrd), grub等
/dev:存儲(chǔ)特殊文件或設(shè)備文件
/etc:系統(tǒng)程序的配置文件,只能為靜態(tài)
/home:普通用戶的家目錄搓译,一般每個(gè)普通用戶的家目錄默認(rèn)為此目錄下與用戶名相同的子目錄悲柱;/home/USERNAME
/root:管理員的家目錄
/lib:為系統(tǒng)啟動(dòng)或根文件系統(tǒng)上的應(yīng)用程序(/bin , /sbin等)提供共享庫(kù),以及為內(nèi)核提供內(nèi)核模塊
/lib64:64位系統(tǒng)特有的存放64位共享庫(kù)的路徑
/media:便攜式設(shè)備掛載點(diǎn)
/mnt:其他文件系統(tǒng)的臨時(shí)掛載點(diǎn)
/opt:附加應(yīng)用程序的安裝位置些己;可選的路徑
/srv:當(dāng)前主機(jī)為服務(wù)提供的數(shù)據(jù)
/tmp:為那些會(huì)產(chǎn)生臨時(shí)文件的程序提供用于存儲(chǔ)臨時(shí)文件的目錄诗祸;可供所有用戶寫入操作跑芳,有特殊權(quán)限
/usr:usr hierarchy,全局共享的只讀數(shù)據(jù)路徑
? ??bin, sbin
? ??lib , lib64
? ??include: C程序頭文件
? ??share : 命令手冊(cè)頁(yè)和命令自帶文檔等架構(gòu)特有的文件的存儲(chǔ)位置
? ??local : 另一個(gè)層級(jí)目錄
? ??X11R6 : X-window程序的安裝位置
? ??src : 程序源碼文件的存儲(chǔ)位置
/usr/local:local hierarchy直颅,讓系統(tǒng)管理員安裝本地應(yīng)用程序;通常用于安裝第三方程序
/var:存儲(chǔ)經(jīng)常發(fā)生變化的數(shù)據(jù)的目錄怀樟,如日志
/proc:基于內(nèi)存的虛擬文件系統(tǒng)功偿,內(nèi)核和進(jìn)程存儲(chǔ)其相關(guān)信息,它們多為內(nèi)核參數(shù)往堡,例如內(nèi)核參數(shù)net.ipv4.ip_forward,會(huì)將其虛擬為net/ipv4/ip_forward械荷,存儲(chǔ)與/proc/sys目錄下,其完整路徑為:/proc/sys/net/ipv4/ip_forward
/sys: sysfs虛擬文件系統(tǒng)提供了一種比proc更為理想的訪問內(nèi)核數(shù)據(jù)的途徑虑灰,基于內(nèi)存的虛擬文件系統(tǒng)吨瞎,其主要作用在于為管理linux設(shè)備提供一種統(tǒng)一模型的接口? ? ? ? ? ?
2、描述文件的元數(shù)據(jù)信息有哪些穆咐,分別表示什么含義颤诀,如何查看对湃?如何修改文件的時(shí)間戳信息?
文件的數(shù)據(jù)分為兩種:元數(shù)據(jù)(metadata)和數(shù)據(jù)(data)拍柒;元數(shù)據(jù)為文件的屬性數(shù)據(jù);使用stat命令可以查看文件的元數(shù)據(jù):
例如:stat /etc/issue
? ?File: ‘/etc/issue’??
? ?Size: 23? ? ? ? Blocks: 8? ? ? ? ? IO Block: 4096? regular file
? ?Device: fd00h/64768d Inode: 16777320? ? Links: 1
? ?Access: (0644/-rw-r--r--)? Uid: (? ? 0/? ? root)? Gid: (? ? 0/? ? root)
? ?Context: system_u:object_r:etc_t:s0
? ?Access: 2019-12-02 04:25:17.224948543 -0500
? ?Modify: 2019-09-05 09:05:40.000000000 -0400
? ?Change: 2019-11-26 05:05:29.578997993 -0500
? ?Birth: -
? ? ? ? 其中file文件名拆讯;size文件大兄小种呐;blocks文件占了多少數(shù)據(jù)塊;IO block文件所占數(shù)據(jù)塊的塊大猩轮堕油;device硬件,說明文件在硬盤的哪個(gè)柱面掉缺;inode節(jié)點(diǎn)號(hào)戈擒;links文件的鏈接數(shù);access權(quán)限筐高;uid文件所屬主丑瞧;gid文件所屬組蜀肘;context安全上下文;Access最近一次訪問文件的時(shí)間西乖;modify最近一次改動(dòng)文件數(shù)據(jù)的時(shí)間坛增;change最近一次改動(dòng)文件屬性元數(shù)據(jù)的時(shí)間;
修改文件的時(shí)間戳信息:(access,modify,change為時(shí)間戳)
? ? ? ? 使用touch命令修改文件時(shí)間戳:
? ? ? ? ? ? ? ? 語法:touch [OPTION]...FILE...
? ? ? ? ? ? ? ? 主要選項(xiàng):
? ? ? ? ? ? ? ? ? ? ? ? -a:僅修改access time為當(dāng)前系統(tǒng)時(shí)間
? ? ? ? ? ? ? ? ? ? ? ? -c:指定文件不存在時(shí)届案,不予創(chuàng)建
? ? ? ? ? ? ? ? ? ? ? ? -m:僅修改modify time為當(dāng)前系統(tǒng)時(shí)間
? ? ? ? ? ? ? ? ? ? ? ? -t STAMP:使用指定的時(shí)間[[CC]YY]MMDDhhmm[.ss]格式代替當(dāng)前時(shí)間
? ? ? ? ? ? ? ? ? ? ? ? -r:使用某文件的時(shí)間戳代替當(dāng)前時(shí)間修改access和modify
3罢艾、總結(jié)軟連接和硬連接區(qū)別,并用實(shí)例操作說明昆婿。
硬鏈接:指向同一個(gè)inode的多個(gè)文件路徑仓蛆;目錄不支持硬鏈接;硬鏈接不能跨文件系統(tǒng)看疙;創(chuàng)建硬鏈接會(huì)增加文件屬性中的inode引用計(jì)數(shù)。使用命令格式:"ln 原文件 鏈接"
軟鏈接:指向一個(gè)文件路徑的另一個(gè)文件路徑施禾;軟鏈接與原文件為兩個(gè)各自獨(dú)立的文件搁胆,各自有自己的inode,對(duì)原文件創(chuàng)建軟鏈接不會(huì)增加inode引用次數(shù)渠旁;目錄也可以創(chuàng)建軟鏈接,并且可以跨文件系統(tǒng)創(chuàng)建顾腊;刪除軟鏈接不會(huì)影響原文件,但刪除原文件梆惯,軟鏈接指定的路徑即不存在,此時(shí)會(huì)成為無效鏈接垛吗;軟鏈接的文件大小是其指向的文件的路徑字符串的字節(jié)數(shù)。使用命令格式:"ln -s 原文件? 鏈接"
實(shí)例操作
查看/etc/issue當(dāng)前l(fā)inks鏈接數(shù)
創(chuàng)建硬鏈接/etc/issue的硬鏈接到/tmp/issue
查看/etc/issue的Links鏈接數(shù)
創(chuàng)建目錄/etc/的硬鏈接
創(chuàng)建/etc/issue的軟鏈接到/tmp/lnsissue
查看/etc/issue屬性中的links鏈接數(shù)
4、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關(guān)示例演示捷泞。
cp命令:
復(fù)制文件或目錄
命令格式:
單源復(fù)制:?cp [OPTION]... [-T] SOURCE DEST;
? ?????如果DEST不存在失受,則先創(chuàng)建文件咏瑟,并復(fù)制源文件的數(shù)據(jù)流至DEST;
? ?????如果DEST存在:
? ?????????????如果DEST是非目錄文件:則會(huì)覆蓋目標(biāo)文件
? ? ? ?????????如果DEST是目錄文件:現(xiàn)在DEST目錄下創(chuàng)建一個(gè)與源文件同名的文件兄旬,并復(fù)制其數(shù)據(jù)流
多源復(fù)制:cp [OPTION]... SOURCE... DIRECTORY余寥;?cp [OPTION]... -t DIRECTORY SOURCE...
? ??????如果DEST不存在:錯(cuò)誤
? ? ? ? 如果DEST存在:
? ? ? ? ? ? ? ? 如果DEST是非目錄文件:錯(cuò)誤
? ? ? ? ? ? ? ? 如果DEST是目錄文件:分別復(fù)制每個(gè)文件至目標(biāo)目錄中并保持原名
常用選項(xiàng):
-i :交互式復(fù)制,即覆蓋之前提醒用戶確認(rèn)
-f : 強(qiáng)制覆蓋目標(biāo)文件
-r : 遞歸復(fù)制目錄
-d : 復(fù)制符號(hào)鏈接文件本身绪撵,而非其指向的源文件
-a : -dR 歸檔
使用實(shí)例:
# cp /etc/passwd /tmp/? ?復(fù)制/etc/passwd文件到/tmp/目錄?
mv命令:
移動(dòng)或者重命名文件名
命令格式:
mv [OPTION]... [-T] SOURCE DEST祝蝠;mv [OPTION]... SOURCE... DIRECTORY;mv [OPTION]... -t DIRECTORY SOURCE...
常用選項(xiàng):
-i: 交互
-f : force绎狭,覆蓋前不提示
使用實(shí)例:
~]# mv text1.txt text2.txt? ?將root目錄下的文件text1.txt重命名為text2.txt
~]# mv text2.txt /etc/? ? ?將root目錄下的文件text2.txt移動(dòng)到/etc/目錄下
rm命令:
刪除文件或目錄
命令格式:
rm [OPTION]... FILE...
常用選項(xiàng):
-i : interactive坟岔,交互
-f : force,忽略不存在的文件和參數(shù)社付,且不提示
-r : recursive邻耕,遞歸
刪除目錄:rm -rf /PATH/TO/DIR
? ??????危險(xiǎn)操作:rm -rf /*
注意:所有文件都不要直接刪除燕鸽,而是移動(dòng)至某個(gè)專用目錄(模擬回收站)
使用實(shí)例:
~]# rm -f /etc/text2.txt? ? ?刪除/etc/目錄下的文件text2.txt ,并且不提示是否刪除
cd命令:
?切換用戶的工作目錄御滩,路徑可表示為絕對(duì)路徑或者相對(duì)路徑党远。
使用實(shí)例:
工作目錄切換到/etc/摘能;
切換到當(dāng)前用戶主目錄焚辅;
切換到用戶上一次所在的目錄;
切換到上級(jí)目錄拨匆;
pwd命令:
以絕對(duì)路徑方式顯示用戶當(dāng)前所在的工作目錄
使用實(shí)例:
ls命令:
顯示指定文件目錄的文件信息赂蠢,默認(rèn)顯示當(dāng)前目錄下的文件信息
命令格式:
ls [OPTION]... [FILE]...
常用選項(xiàng):
-a, --all :顯示所有文件包含隱藏文件
-A : 顯示除.和..之外的所有文件
-l : --long , 長(zhǎng)格式列表蓖扑,即顯示文件詳細(xì)的屬性信息
-h : --human-readable:對(duì)文件大小單位進(jìn)行換算:換算后結(jié)果可能會(huì)非精確值
-d : 查看目錄自身而非其內(nèi)部的文件列表
-r : 逆序顯示
-R : 遞歸顯示
-i :顯示文件元數(shù)據(jù)編號(hào)
cat命令:
文本文件內(nèi)容查看
命令格式:
cat [OPTION]... [FILE]...
常用選項(xiàng):
-n : 給顯示的文本行統(tǒng)一編號(hào)
-E : 顯示行結(jié)束符$
mkdir命令:
創(chuàng)建目錄
命令格式:
mkdir [OPTION]... DIRECTORY...
常用選項(xiàng):
-p:自動(dòng)按需創(chuàng)建父目錄
-v:顯示詳細(xì)過程
-m:直接給定權(quán)限
rmdir命令:
刪除空目錄
命令格式:
rmdir [OPTION]... DIRECTORY...
常用選項(xiàng):
-p:刪除某目錄后俩功,如果其父目錄為空碰声,則一并刪除
?-v:顯示過程
5胰挑、復(fù)制/etc/profile至/tmp/目錄,用查找替換命令刪除/tmp/profile文件中的行首的空白字符
~]# cp /etc/profile /tmp/
~]# vim /tmp/profile
末行模式下執(zhí)行:
%s@^[[:space:]]*@@
6瞻颂、在vim中設(shè)置tab縮進(jìn)為4個(gè)字符
在末行模式下設(shè)定,僅對(duì)當(dāng)前vim進(jìn)程有效:
set ts=4
永久有效
? ??????全局:/etc/vimrc
? ??????用戶個(gè)人:~/.vimrc
echo "set ts=4" >> /etc/vimrc? ?全局下設(shè)置永久有效