日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux基础知识--2.Linux的文件系统和bash的基础特性(1)

發(fā)布時(shí)間:2023/12/15 linux 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux基础知识--2.Linux的文件系统和bash的基础特性(1) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Linux基礎(chǔ)知識(shí)--linux的文件系統(tǒng)和bash的基礎(chǔ)特性

一.Linux文件系統(tǒng):

????Linux文件系統(tǒng)中的文件是數(shù)據(jù)的集合,文件系統(tǒng)不僅包含著文件中的數(shù)據(jù)而且還有文件系統(tǒng)的結(jié)構(gòu),所有Linux 用戶和程序看到的文件、目錄、軟連接及文件保護(hù)信息等都存儲(chǔ)在其中

????linux文件系統(tǒng)遵循FHS(Filesystem Hierarchy Standard,文件系統(tǒng)目錄標(biāo)準(zhǔn)),多數(shù)Linux版本采用這種文件組織形式。FHS采用了樹行組織文件。

????FHS定義了兩層規(guī)范,第一層是,/目錄下面的各個(gè)目錄應(yīng)該要放什么文件數(shù)據(jù)。第二層是針對(duì)/usr及/var 這兩個(gè)目錄的子目錄來定義的。

? 根文件系統(tǒng):(root filesystem)

????/boot:引導(dǎo)文件存放的目錄,內(nèi)核文件(vmlinuz)、引導(dǎo)加載器(bootloader,grub)都存放此目錄中。

????/bin:供所有用戶使用的基本命令存放的目錄。不能關(guān)聯(lián)(掛載)至獨(dú)立分區(qū),os啟動(dòng)時(shí)即會(huì)用到目錄下的程序。

????/sbin:供管理員才能使用的執(zhí)行命令的存放目錄。不能關(guān)聯(lián)至獨(dú)立分區(qū),os啟動(dòng)時(shí)會(huì)用到目錄下的程序。

????/lib:基本共享庫文件和內(nèi)核模塊文件(/lib/modules)

????/lib64:

????/etc:主機(jī)特有的配置文件存放的目錄(大多數(shù)為純文本文件)

???? ? ?/etc/opt:專門為opt下的程序存放配置文件的

???? ? ?/etc/X11:專門為X協(xié)議程序存放配置文件的。X-->Xmanager-->桌面

????/home:用戶的家目錄,一班普通用戶的家目錄都在此

????/media:便攜式移動(dòng)設(shè)備的掛載點(diǎn)

????/mnt:臨時(shí)文件系統(tǒng)的掛載點(diǎn)

????/dev:設(shè)備文件和特殊文件的存放目錄

???? ? ?b:block device:塊設(shè)備文件。可隨機(jī)訪問設(shè)備。

???? ? ?c:character device:線性設(shè)備。

????/opt:第三方應(yīng)用程序的安裝目錄。(附件的存放目錄)

????/srv:系統(tǒng)上的服務(wù)用到的數(shù)據(jù)的存放目錄。

????/tmp:臨時(shí)文件,當(dāng)前系統(tǒng)上臨時(shí)文件都存放在此目錄中

????以上的目錄除了/boot,/home,/media,/mnt之外的目錄都不能進(jìn)行關(guān)聯(lián)

????

????/usr:(universal shared only-read data):全局共享只讀數(shù)據(jù)目錄

????????/usr/bin:所有用戶都能使用的命令存放目錄。存放系統(tǒng)完成一些基本功能的命令,而不是系統(tǒng)啟動(dòng)時(shí)的所用到的命令的目錄,保證系統(tǒng)擁有完整功能而提供的應(yīng)用程序。

????????/usr/sbin:

????????/usr/lib:各應(yīng)用軟件的函數(shù)庫文件

????????/usr/lib64:

????????/usr/include:C語言程序頭文件存放的目錄。頭文件時(shí)庫文件的調(diào)用方式和打開方式

????????/usr/local:取代了/opt。第三方應(yīng)用程序的安裝目錄。此目錄下還有以下目錄:

???????? ?bin,sbin,lib,lib64,etc,share

????????/usr/share:結(jié)構(gòu)化獨(dú)立的數(shù)據(jù),存放一些背景文件,doc,man等。

????????/usr/X11R6:Xwindows system

????????/usr/src:源代碼存放的目錄

????/var:variable data file:可變文件目錄

????????/var/cache:Application cache data:應(yīng)用程序緩存目錄

????????/var/lib:存放可變的狀態(tài)數(shù)據(jù)

????????/var/local:專用于為/usr/local下的應(yīng)用程序存儲(chǔ)可變數(shù)據(jù)

????????/var/lock:鎖文件

????????/var/log:日志目錄

????????/var/run:運(yùn)行中的進(jìn)程相關(guān)的數(shù)據(jù),通常用于存放進(jìn)程的pid文件

????????/var/spool:應(yīng)用程序的緩存數(shù)據(jù)

????????/var/tmp:系統(tǒng)重啟產(chǎn)生的臨時(shí)數(shù)據(jù)存儲(chǔ)的目錄

????/proc:偽文件系統(tǒng):用于輸出內(nèi)核與進(jìn)程信息相關(guān)的虛擬文件系統(tǒng)

????/sys:偽文件系統(tǒng):用于輸出當(dāng)前系統(tǒng)上硬件設(shè)備相關(guān)信息的虛擬文件系統(tǒng)

????/selinux:security enhanced linux:selinux相關(guān)的安全策略信息的存放路徑


? Linux上的應(yīng)用程序的組成部分:

????二進(jìn)制程序:/bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin

????庫文件:/lib,/lib64,/usr/lib,/usr/lib64,/usr/local/lib,/usr/local/lib64。要么是共享的庫,要么是自己供二次開發(fā)的庫

????配置文件:/etc

????幫助文件:/usr/share


二.bash的基礎(chǔ)特性:

????(1)歷史命令:

???? ? history:

????????環(huán)境變量:

????????HISTSIZE:命令歷史記錄的條數(shù)

????????HISTFILE:~/.bash_history

????????HISTFILESIZE:命令歷史文件中的命令條數(shù)。可以修改此環(huán)境變量來改變歷史文件存放

????????命令的條數(shù)

????? ?history -d OFFSET

????? ?????-c清楚緩存

????????? ?-a:手動(dòng)追加當(dāng)前會(huì)話緩沖區(qū)的命令歷史至歷史文件中。

????? ?history #:顯示歷史命令最近的#條命令

????? ?調(diào)用命令的快捷鍵:

????????!#:執(zhí)行第#號(hào)命令

????????!!:

????????!string:執(zhí)行最近一次一string開頭的命令

???? ? 調(diào)用上一條命令的最后一個(gè)參數(shù)

????????!$

????????ESC,.

??????控制命令歷史的記錄方式:

????????環(huán)境變量:HISTCONTROL

???????? ?ignoredups:忽略重復(fù)的命令,重復(fù)且連續(xù)

???????? ?ignorespace:忽略所有以空白字符開頭的命令

???????? ?ignoreboth:==ignoredups,ignorespace

????? ?hash:

????? ?linux系統(tǒng)下會(huì)有一個(gè)hash表,當(dāng)你剛開機(jī)時(shí)這個(gè)hash表為空,每當(dāng)你執(zhí)行過一條命令

????? ?時(shí),hash表會(huì)記錄下這條命令的路徑,就相當(dāng)于緩存一樣。第一次執(zhí)行命令shell解釋器

????? ?默認(rèn)的會(huì)從PATH路徑下尋找該命令的路徑,當(dāng)你第二次使用該命令時(shí),shell解釋器首先

???? ??會(huì)查看hash表,沒有該命令才會(huì)去PATH路徑下尋找。

????(2)命令補(bǔ)全:

???? bash執(zhí)行的命令:

????? ?內(nèi)部命令:

????? ?外部命令:bash根據(jù)PATH環(huán)境變量定義的路徑,自左而右在每一路徑搜尋以命令名的文件

????????第一次找到即為要執(zhí)行的命令所在的目錄。

????? ?直接補(bǔ)全:tab鍵,用戶給定的字符串至于一條唯一對(duì)應(yīng)的命令

????(3)路徑補(bǔ)全:

????? ?把用戶給出的字符串當(dāng)做路徑的開頭,并在其指定上級(jí)目錄下搜尋已指定的字符串開頭的

???????的文件名;如果唯一則補(bǔ)全,否則,再tab就會(huì)列出文件列表

????(4)命令行展開:

????? ?~:展開為用戶的主目錄

????? ?~USERNAME:展開為指定用戶的主目錄

????? ?{}:可承載一個(gè)一逗號(hào)分隔的列表,并將其召開為多個(gè)路徑

????????/tmp/{a,b} ==>/tmp/a ?/tmp/b

????????/tmp/{a,b}/hi ==> /tmp/a/hi /tmp/b/hi

????????/tmp/{x,y}_{m,n} ==> /tmp/x_m /tmp/x_n /tmp/y_m /tmp/y_n

????(5)命令的執(zhí)行狀態(tài)結(jié)果

????????執(zhí)行成功:當(dāng)上一條命令執(zhí)行成功后,再次執(zhí)行echo $? 查看執(zhí)行狀態(tài);0表示成功。

????????如: ? ??????

??????????[root@localhost?~]#?lsa??anaconda-ks.cfg??install.log??install.log.syslog[root@localhost?~]#?echo?$?0

????????執(zhí)行失敗:當(dāng)上一條命令執(zhí)行成功后,再次執(zhí)行echo $? 查看執(zhí)行狀態(tài);1-255表示失

????????敗。如: ? ?

????????[root@localhost?~]#?lls-bash:?lls:?command?not?found[root@localhost?~]#?echo?$?127

????????bash使用特殊變量$?保存最近一次執(zhí)行命令的狀態(tài)結(jié)果。

程序執(zhí)行結(jié)果有兩類:

命令執(zhí)行的返回值:

命令執(zhí)行狀態(tài)結(jié)果:


轉(zhuǎn)載于:https://blog.51cto.com/zkchang/1685358

總結(jié)

以上是生活随笔為你收集整理的Linux基础知识--2.Linux的文件系统和bash的基础特性(1)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。