Linux的 文件系統(tǒng)分層結(jié)構(gòu)標(biāo)準(zhǔn) :FHS Filesystem Hierarchy Standard
創(chuàng)新互聯(lián)建站是專業(yè)的新林網(wǎng)站建設(shè)公司,新林接單;提供做網(wǎng)站、網(wǎng)站設(shè)計(jì),網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行新林網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
參考文檔: 其中對(duì)每個(gè)文件目錄有詳細(xì)說明
/ :根目錄,最頂級(jí)目錄,也是 管理員的家目錄
/boot:引導(dǎo)文件、內(nèi)核文件(vmlinuz)、引導(dǎo)加載器(bootloader, grub)都存放于此
/bin: 所有用戶 使用的基本命令(二進(jìn)制文件)
/sbin:管理類的基本命令 (僅由root執(zhí)行)
/bin與/sbin:不能關(guān)聯(lián)至獨(dú)立分區(qū),OS啟動(dòng)即會(huì)用到的程序
/etc 配置文件目錄
/home/USERNAME:各個(gè)用戶家目錄,存放用戶數(shù)據(jù)
/proc: 用于輸出內(nèi)核與進(jìn)程信息相關(guān)的虛擬文件系統(tǒng)
/sys:用于輸出當(dāng)前系統(tǒng)上硬件設(shè)備相關(guān)信息虛擬文件系統(tǒng)
/usr: universal shared, read-only data (通用只讀文件)
lib:32位使用
lib64:只存在64位系統(tǒng)
include: C程序的頭文件(header files)
share:結(jié)構(gòu)化獨(dú)立的數(shù)據(jù),例如doc, man等
local:第三方應(yīng)用程序的安裝位置
bin, sbin, lib, lib64, etc, share
/var: variable data files (可變數(shù)據(jù))
cache: 應(yīng)用程序緩存數(shù)據(jù)目錄
lib: 應(yīng)用程序狀態(tài)信息數(shù)據(jù)
local:專用于為/usr/local下的應(yīng)用程序存儲(chǔ)可變數(shù)據(jù)
lock: 鎖文件
log: 日志目錄及文件
opt: 專用于為/opt下的應(yīng)用程序存儲(chǔ)可變數(shù)據(jù)
run: 運(yùn)行中的進(jìn)程相關(guān)數(shù)據(jù),通常用于存儲(chǔ)進(jìn)程pid文件
spool: 應(yīng)用程序數(shù)據(jù)池
tmp: 保存系統(tǒng)兩次重啟之間產(chǎn)生的臨時(shí)數(shù)據(jù)
/dev:設(shè)備文件及特殊文件存儲(chǔ)位置
/tmp:臨時(shí)文件存儲(chǔ)位置
/srv:系統(tǒng)上運(yùn)行的服務(wù)用到的數(shù)據(jù)
/media:便攜式移動(dòng)設(shè)備掛載點(diǎn)(優(yōu)盤)
/mnt:臨時(shí)文件系統(tǒng)掛載點(diǎn)
/opt:第三方應(yīng)用程序的安裝位置
注意:CentOS 7 以后版本目錄結(jié)構(gòu)變化 (以下兩者相同)
/bin 和 /usr/bin
/sbin 和 /usr/sbin
/lib 和/usr/lib
/lib64 和 /usr/lib64
范例:
二進(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
配置文件: /etc, /etc/DIRECTORY, /usr/local/etc
幫助文件: /usr/share/man, /usr/share/doc, /usr/local/share/man, /usr/local/share/doc
用 ll 命令查看首字母:
(-) 普通文件
d 目錄文件
b 塊設(shè)備
c 字符設(shè)備
l 符號(hào)鏈接文件
p 管道文件pipe
s 套接字文件socket
每個(gè)shell和系統(tǒng)進(jìn)程 都有一個(gè)當(dāng)前的工作目錄(current work directory,簡(jiǎn)稱CWD)
顯示當(dāng)前shell CWD的絕對(duì)路徑: 使用pwd命令 (printing working directory)
范例:
[圖片上傳失敗...(image-8b8689-1596285623724)]
基名 :basename,只取文件名而不要路徑
目錄名 :dirname,只取路徑,不要文件名
范例:
命令 cd : change directory 改變目錄(可以使用絕對(duì)或相對(duì)路徑)
選項(xiàng):-P 切換至物理路徑
切換至父目錄 : cd ..
切換至當(dāng)前用戶家目錄: cd
切換至上一個(gè)工作目錄 : cd -
相關(guān)的環(huán)境變量:
PWD:當(dāng)前目錄路徑
OLDPWD:上一次目錄路徑
文件相關(guān)信息:metadata(屬性,元數(shù)據(jù)), data(數(shù)據(jù)內(nèi)容)
每個(gè)文件有三個(gè)時(shí)間戳: (touch創(chuàng)建已存在的文件時(shí),刷新3個(gè)時(shí)間戳)
access time 訪問時(shí)間,atime,讀取文件內(nèi)容
modify time 修改時(shí)間,mtime,改變文件內(nèi)容(數(shù)據(jù))
change time 改變時(shí)間,ctime,元數(shù)據(jù)發(fā)生改變(屬性)
mtime的改變必然引起ctime的改變
執(zhí)行l(wèi)l命令默認(rèn)顯示mtime
范例:
用來匹配符合條件的多個(gè)文件,方便批理管理文件
通配符采有特定的符號(hào),表示特定的含義,此特符號(hào)稱為 元字符
范例:只顯示文件夾
別外還有在Linux系統(tǒng)中預(yù)定義的字符類:命令man 7 glob可以查看
使用以上通配符,需要雙重中括號(hào)!!!!!!!!!!!!!!
{a..e} 與 [a - e] 排序內(nèi)容不相同?。?!
范例:
范例: 創(chuàng)建一個(gè)以昨天日期命名的.log文件
cp 命令格式:
默認(rèn)cp=cp -i,提示是否覆蓋
范例:
1、將/etc/目錄下所有文件,備份到/data獨(dú)立的子目錄下,并要求子目錄格式為 backupYYYY-mm-dd,備份過程可見
2、創(chuàng)建/data/rootdir目錄,并復(fù)制/root下所有文件到該目錄內(nèi),要求 保留原有權(quán)限
mv 命令可以實(shí)現(xiàn)文件或目錄的 移動(dòng)和改名 :
常用選項(xiàng):
-i 交互式
-f 強(qiáng)制
-b 若目標(biāo)存在,覆蓋前先備份
利用 rename 可以 批量修改文件名 :
范例: (改名對(duì)象打不打引號(hào)都可以)
使用rm 命令可以刪除文件
常用選項(xiàng) :
-i 交互式
-f 強(qiáng)制刪除
-r 遞歸,對(duì)目錄進(jìn)行操作時(shí)必須使用
--no-preserve-root 用來刪除根目錄
范例:刪除特殊文件
rm雖然刪除了文件,但是被刪除的文件仍然 可能被恢復(fù) ,
在安全要求較高的場(chǎng)景下,可以使用shred安全刪除文件
補(bǔ)充技巧: 防止rm造成嚴(yán)重后果,定義別名進(jìn)行備份 (修改配置文件永久有效)
配置文件目錄:/root/.bashrc
顯示目錄樹 tree
常見選項(xiàng):
-d: 只顯示目錄
-L level: 指定顯示的層級(jí)數(shù)目
-P pattern: 只顯示由指定wild-card pattern匹配到的路徑
常見選項(xiàng):
-p: 存在于不報(bào)錯(cuò),且可自動(dòng)創(chuàng)建所需的各目錄 (用于一次創(chuàng)建多層目錄)
-v: 顯示詳細(xì)信息
-m MODE: 創(chuàng)建目錄時(shí)直接 指定權(quán)限!!!!!!!!!!
rmdir 只能刪除空目錄 ,如果想刪除非空目錄,可以使用rm -r 命令遞歸刪除目錄樹
常見選項(xiàng):
-p 遞歸刪除父空目錄
-v 顯示詳細(xì)信息
練習(xí)
(1) 如何創(chuàng)建/testdir/dir1/x, /testdir/dir1/y, /testdir/dir1/x/a, /testdir/dir1/x/b, /testdir/dir1/y/a,
/testdir/dir1/y/b
(2) 如何創(chuàng)建/testdir/dir2/x, /testdir/dir2/y, /testdir/dir2/x/a, /testdir/dir2/x/b
(3) 如何創(chuàng)建/testdir/dir3, /testdir/dir4, /testdir/dir5, /testdir/dir5/dir6, /testdir/dir5/dir7
inode = (index node)
每個(gè)文件的屬性信息,比如:文件的大小,時(shí)間,類型等,稱為文件的 元數(shù)據(jù)
這些元數(shù)據(jù)存放在 inode表中
inode 表 中有很多條記錄組成, 第一條記錄保存元數(shù)據(jù),包括以下信息:
inode number 節(jié)點(diǎn)號(hào)(身份證號(hào))
文件類型
權(quán)限
UID
GID
鏈接數(shù)(指向這個(gè)文件名路徑名稱個(gè)數(shù))
該文件的大小和不同的時(shí)間戳
指向磁盤上文件的數(shù)據(jù)塊指針
有關(guān)文件的其他數(shù)據(jù)
一般情況下inode表會(huì)占用系統(tǒng)磁盤inode總量的1%
節(jié)點(diǎn)號(hào)表示 文件的唯一編號(hào) ?。?!整個(gè)系統(tǒng)中 節(jié)點(diǎn)號(hào)是有限的
當(dāng)節(jié)點(diǎn)號(hào)用盡時(shí),即使還有儲(chǔ)存空間,也會(huì)提示無剩余空間 ?。。。。?!
目錄 是個(gè)特殊文件,目錄的元數(shù)據(jù)保存了 目錄中文件的列表及節(jié)點(diǎn)號(hào)的對(duì)應(yīng)關(guān)系?。?!
系統(tǒng)引用文件是 使用 inode號(hào)
實(shí)際用戶是 通過文件名 來引用一個(gè)文件
目錄是 目錄下的文件名和文件inode號(hào)之間的映射
執(zhí)行cp命令:
執(zhí)行rm 命令:
執(zhí)行mv命令:
硬鏈接本質(zhì)上就 給一個(gè)文件起一個(gè)新的名稱 ,實(shí)質(zhì)是同一個(gè)文件
范例:對(duì)文件f1.log創(chuàng)建新的名稱f1link.log,兩者inode都是132
硬鏈接特性 :
目錄的鏈接數(shù)至少為2,因?yàn)槟夸浿械?. 即為自身
創(chuàng)建子目錄會(huì)導(dǎo)致鏈接數(shù)增加!
一個(gè)符號(hào)鏈接指向另一個(gè)文件, 就像windows中的快捷方式
軟鏈接特點(diǎn):
關(guān)于源文件相對(duì)路徑:只有跨分區(qū)創(chuàng)建軟鏈接時(shí)才有此問題!
案例一:
提示空間不足 No space left on device,但是 df 查看磁盤空間剩余很多
案例二:
提示儲(chǔ)存空間不足,刪除無用的大文件后,空間并未釋放,什么原因?如何解決?
讀入數(shù)據(jù):Input
輸出數(shù)據(jù):Output
打開的文件都有一個(gè) fd : file descriptor (文件描述符)
Linux給程序提供 三種 I/O 設(shè)備
I/O重定向:將默認(rèn)的輸入,輸出或錯(cuò)誤 對(duì)應(yīng)的設(shè)備進(jìn)行修改,指向新的目標(biāo)
STDOUT和STDERR可以被重定向到指定文件,而非默認(rèn)的當(dāng)前終端
支持的操作符號(hào)包括:
把STDOUT重定向到文件或其他終端
重定向到文件時(shí),若文件不存在則創(chuàng)建,若文件存在則覆蓋內(nèi)容
再次重定向到同一文件,內(nèi)容再次覆蓋
若 符號(hào)之前不輸入命令,則效果為生成空文件或清空目標(biāo)文件
是迅速清空文件內(nèi)容的一種方式
借助/dev/null也可實(shí)現(xiàn)同樣的功能
磁盤空間不足時(shí),大文件被占用不能停,而且rm刪除無法立即騰出空間,應(yīng)使用 或/dev/null
把STDERR重定向到文件或其他終端
set - C 命令, 禁止將內(nèi)容覆蓋已有文件,但可追加 (此時(shí)|可以強(qiáng)制覆蓋)
set + C 命令,允許覆蓋
強(qiáng)制覆蓋
用 ( )或者{ }合并多個(gè)命令的out或err, 注意使用花括號(hào)的格式!??!
使用 來重定向標(biāo)準(zhǔn)輸入:從文件中導(dǎo)入STDIN,代替當(dāng)前終端的輸入設(shè)備
使用 單行或多行重定向 來創(chuàng)建新文件,并輸入指定內(nèi)容
同時(shí)存在 ,優(yōu)先進(jìn)行 輸入運(yùn)算
只能對(duì)新文件進(jìn)行!?。。?!
只能對(duì)新文件進(jìn)行?。。。。?/p>
使用 "終止詞" 命令 把接下來輸入的多行內(nèi)容進(jìn)行重定向,
直到終止詞位置之前的所有文本都發(fā)送給STDIN
終止詞 可以是任何一個(gè)或多個(gè)符號(hào),
比如:!,@,$,EOF(End Of File),magedu等, 其中EOF比較常用
易錯(cuò)點(diǎn): tr命令實(shí)現(xiàn)的是 單個(gè)字符一一對(duì)應(yīng)的轉(zhuǎn)換關(guān)系?。。?!
基本格式:
常見用途: 全局大小寫轉(zhuǎn)換
-d 刪除 所有含有SET1的字符
-c 取字符集的補(bǔ)集,即 取反(一般與-d搭配使用)
-s 把 連續(xù)重復(fù)的單個(gè)字符 以單獨(dú)一個(gè)字符表示,即 去重
管道(使用符號(hào)“|”表示) 用來連接多個(gè)命令
功能說明:
注意:STDERR默認(rèn)不能通過管道轉(zhuǎn)發(fā),可利用21 或 | 實(shí)現(xiàn),格式如下
因此, 當(dāng)不確定命令的輸出結(jié)果,或者已知結(jié)果中存在error時(shí) ,應(yīng)該使用上述命令
范例:將 /home 里面的 文件打包 ,不生成文件,而是傳送到 stdout,經(jīng)過管道后,
將 tar -cvf - /home 傳送給后面的 tar -xvf - , 最后的這個(gè) - 表示 取前一個(gè)命令的 stdout
利用tee命令 可以既重定向到文件,又顯示在屏幕
tee的功能:
基本用法
若后面不加命令2
1:音樂術(shù)語
2:服裝面料
TR
也寫作
T/R:紡織術(shù)語簡(jiǎn)寫。其中
T是
Polyester
滌綸,R是
Rayon
人造棉(粘膠)。
表示滌綸(Polyester)的成分占到60%以上與人造棉(Rayon
)混紡的混紡紗線或者面料。
通常用來做西裝
3:RTS游戲?qū)S忻~簡(jiǎn)寫
是多種即時(shí)戰(zhàn)略游戲中共有的戰(zhàn)術(shù),都是以在對(duì)方基地建造攻擊型建筑為手段來壓制和殺傷對(duì)手。由于游戲的不同,不同戰(zhàn)略游戲的TR也不盡相同。然而,共同點(diǎn)都是TR戰(zhàn)術(shù)冒的風(fēng)險(xiǎn)極大。
魔獸爭(zhēng)霸3中:
箭塔沖擊(TOWER
RUSH)
利用在對(duì)方基地建造防御塔來達(dá)到壓制與殺傷對(duì)手的作用。分為人族、獸族的箭塔沖擊戰(zhàn)術(shù),(有時(shí)暗夜精靈的遠(yuǎn)古守護(hù)者也被用來TR,不過也可以理解成TREE
RUSH)是一種冒險(xiǎn)性比較大的極端戰(zhàn)術(shù)。
海龜島(TURTLE
ROCK)地圖
冰封王座版本中的新地圖,是國際比賽專用地圖之一。
帝國時(shí)代2中:
塔爆(TOWER
RUSH)
狹義的塔爆指通過較早地升到封建時(shí)代并在封建時(shí)代早期到對(duì)手基地周圍起塔、互相呼應(yīng)步步推進(jìn)來封鎖對(duì)方資源點(diǎn)、壓制對(duì)方經(jīng)濟(jì)、為我方在全局戰(zhàn)略上創(chuàng)造有利條件的一種前期戰(zhàn)術(shù)。最適用民族為條頓。從最狹義的純塔爆中,衍生出塔弓(傳統(tǒng)封建快攻,箭塔+弓箭手)、塔散(箭塔+投矛手)、塔劍(箭塔+劍士)等戰(zhàn)術(shù),這些戰(zhàn)術(shù)中箭塔一般起輔助作用。
紅色警戒3中:
TOWER
RUSH
指將基地車開到對(duì)方基地附近建造防御建筑(盟軍使用多功能炮塔,蘇軍使用磁爆線圈)來打擊對(duì)方的戰(zhàn)術(shù)。
4:多倫多猛龍隊(duì)簡(jiǎn)稱
5:《古墓麗影》游戲簡(jiǎn)稱
TR還可以表示Tomb
Raider,即一款由EIDOS推出的游戲
詳細(xì)見
6:版本更新簡(jiǎn)稱
KIS2009
357tr
等等中的tr指的是一種版本,即
Technical
Refresh(技術(shù)更新版)
7:“超級(jí)跑跑”相關(guān)簡(jiǎn)稱
超級(jí)跑跑錢幣的名稱,以及超級(jí)跑跑游戲名稱的簡(jiǎn)稱,TalesRunner的縮寫-TR
8:Travian(部落戰(zhàn)爭(zhēng))的簡(jiǎn)寫
取其第一、第二字母作為簡(jiǎn)稱
9:TR天籟之音
金厲旭(金麗旭)中國后援會(huì)
10:矩陣
tr(A)=the
trace
of
the
matrix
A
矩陣A的跡。
矩陣?yán)碚撝惺沁@樣定義矩陣A的跡
設(shè)A=(aij)是一個(gè)n階方陣,A的對(duì)角線元素之和稱為A的跡,記為trA,即
trA=a11+a22+...+ann
它有兩個(gè)重要的性質(zhì):
性質(zhì)1:b1+b2+...+bn=trA
性質(zhì)2:b1*b2*...*bn=detA
其中b1,b2,...,bn為矩陣A的特征值,detA表示A的行列式。
10:國家、域名代碼
土耳其共和國(The
Republic
of
Turkey).
代碼TR(turkey
火雞)
11:tr
標(biāo)簽
tr
標(biāo)簽
--
代表HTML表格中的一行
*
tr標(biāo)簽是成對(duì)出現(xiàn)的,以tr開始,/tr結(jié)束
*
屬性
o
Common
--
一般屬性
o
align
--
代表行的水平對(duì)齊方式(left(左對(duì)齊)
|
center(居中對(duì)齊)
|right(右對(duì)齊)
|
justify)(此屬性應(yīng)該使用CSS實(shí)現(xiàn))
o
valign
--
代表行的垂直對(duì)齊方式(top(頂部對(duì)齊)
|
middle(中部對(duì)齊)
|
bottom(下部對(duì)齊)
|
baseline(基線對(duì)齊))(此屬性應(yīng)該使用CSS實(shí)現(xiàn))
*tr是table
row的縮寫
12:tr命令
tr是linux命令常用命令,其全稱“Text
Replacer”,該命令用于進(jìn)行文本替換。
13:SAP
TR
SAP系統(tǒng)中的TR(Treasury
and
Cash
Management)模塊現(xiàn)在包括了現(xiàn)金管理,現(xiàn)金預(yù)算管理以及FM基金管理,原來在FI下的基金管理已經(jīng)被劃撥到了TR的功能下面:其中:
現(xiàn)金管理:資金頭寸、銀行會(huì)計(jì)、資金預(yù)測(cè)和現(xiàn)金平衡等。
基金管理:請(qǐng)參看我的基金管理詳解~
現(xiàn)金預(yù)算管理:
計(jì)劃層次、現(xiàn)金流量表和內(nèi)部銀行管理。
14:AutoCAD快捷鍵
AutoCAD制圖軟件中“剪切”命令快捷鍵。
15:食物數(shù)據(jù)表中的符號(hào)Tr
表示微量:低于目前檢出方法的檢出限或未檢出。
16:Tencent
research
TR
通過你的描述,替換命令如下:
1、tr 命令來進(jìn)行替換
[root@localhost ss1]# tr '111' '2222222' aa.txt
2、sed 命令
[root@localhost ss1]# sed ‘s/wyf/wzw/g’ ./person.txt
這里使用sed 內(nèi)置命令s 來實(shí)現(xiàn)替換功能,并且使用了全局替換標(biāo)志g 表示替換文件中匹配wyf的所有字符串。
溫馨提示:
1、tr 命令在接文件時(shí)比較特殊,需要輸入重定向符號(hào) “”
2、凡是在文本中出現(xiàn)的“111”均應(yīng)轉(zhuǎn)換成“222222”,而不是僅僅將單個(gè)進(jìn)行轉(zhuǎn)換,這個(gè)要注意。
3、在使用sed 命令時(shí),要注意一下語法格式,將要替換的文本“wyf”放在第一個(gè)和第二個(gè)“/” 之間,將替換后的文本“wzw”放到第二個(gè)和第三個(gè)“/” 之間。這個(gè)要注意。
以上就是我的回答,在具體操作時(shí),可能會(huì)有出入,如有問題可??私信?+?關(guān)注,我會(huì)第一時(shí)間來進(jìn)行回復(fù)追答,希望我的回答能幫到你。
去掉文件中的換行符
(1)tr命令的操作是針對(duì)文件的操作,它把整個(gè)文本當(dāng)做操作的對(duì)象,所以可以直接去除文件中的換行符
tr '\n' ' ' file
(2)sed的操作對(duì)象是行.而作為行分割符號(hào)的回車符,本身是不屬于行的.所以sed中必須加上N命令,把下一行的內(nèi)容添加到當(dāng)前的pattern space中,這樣實(shí)際上是把相鄰的2行合并了.下一次仍然是先n,再p,再N,開始新的輪回:
cat file | sed 'N;s/\n/ /'
所以上面的語句是不能把文件內(nèi)容合并為一行的,到底該怎么寫,我暫時(shí)沒有想到,呵呵
(3)直接用awk
awk '{printf("%s ",$0)}' file
(4)當(dāng)然,用echo也是可以的:
while read line;do echo -n "$line"; done awk_help.txt, 這樣,可以把a(bǔ)wk_help.txt的內(nèi)容合并為一行
sed -e "s#\[/r][/r][/n]#\[/r][/n]#g" file
從一個(gè)正常人的角度來說,這個(gè)命令應(yīng)該這么用?。?/p>
echo "hello:world"|tr -c 'a-zA-Z' '\n'
用括號(hào)是錯(cuò)誤的。
使用預(yù)定義的字符集才用括號(hào), 而且是[:alnum:]
新聞標(biāo)題:關(guān)于linux下tr命令的信息
當(dāng)前URL:http://chinadenli.net/article38/dodeppp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、App開發(fā)、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站收錄、微信小程序、定制開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)