- 相關(guān)推薦
Linux認證基礎知識:Linux中正則表達式與文件處理
在學(xué)習Linux認證過(guò)程中,每個(gè)人會(huì )遇到每個(gè)人不同的問(wèn)題,或小或大,真心希望同學(xué)們能少受些折磨,多得一些成就感與豁然開(kāi)朗的感覺(jué),這樣的學(xué)習才能化被動(dòng)為主動(dòng),越學(xué)越快樂(lè )。
一、正則表達式
1.簡(jiǎn)單的說(shuō)正則表達式就是處理字符串的方法,它是以行為單位來(lái)進(jìn)行字符串的處理行為,正則表達式通過(guò)一些特殊符號的輔助,可以讓用戶(hù)輕易的達到查找,刪除,替換某特定字符串的處理程序
2.grep在數據中查找一個(gè)字符串時(shí),是以整行為單位來(lái)進(jìn)行數據的選取的,也就是說(shuō)假如一個(gè)文件內有10行,那么其中兩行是有用的,那么就將這兩行顯示出來(lái),其它的丟棄
3.在bash當中,我們知道通配符*可以用來(lái)表示任意個(gè)字符,但是正則表達式中的*表示不同的含義
在正則表達式中,'.'表示的是一定有一個(gè)任意字符的意思
在正則表達式中,'*'表示的是重復前一個(gè)字符0到無(wú)窮多次的意思
4.基礎的正則表達式
RE字符 意義
^word 查找行首為word的行
word$ 查找結尾為word的行
. 代表一定有一個(gè)任意的字符
\ 轉義字符,將特殊字符的特殊意義去除
* 重復前一個(gè)字符0個(gè)到無(wú)窮多個(gè)
[list] 從字符集合里面選擇一個(gè)字符
[n1-n2] 從要選擇的范圍里面選擇一個(gè)字符
[^list] 從不是這個(gè)字符集合里面找出一個(gè)字符
\{n,m\} 連續n到m個(gè)的前一個(gè)字符,\{n\}則是連續n個(gè)前一個(gè)字符,\{n,\}則是聯(lián)系n到無(wú)窮多個(gè)前一個(gè)字符
二、sed 工具
1 sed本省是一個(gè)管道命令,可以分析標轉輸入,而且sed還可以將數據進(jìn)行替換,刪除,新增,選取特定行等功能
2 sed的用法
sed [-nefr] [動(dòng)作]
-n 使用安靜模式,在一般模式中,所有來(lái)自stdin的數據一般都會(huì )被列出到屏幕上,但是如果加上-n這個(gè)參數的話(huà),則只有經(jīng)過(guò)sed特殊處理的那一行才會(huì )被列出
-e 直接在命令模式上進(jìn)行sed的動(dòng)作編輯
-f 直接將sed的動(dòng)作寫(xiě)在一個(gè)文件內,-f filename則可以執行filename內的sed動(dòng)作
-r sed的動(dòng)作支持的是擴展正則表達式的語(yǔ)法
-i 直接修改文件的內容,而不是由屏幕輸出
3.動(dòng)作說(shuō)明 n1,n2 function
n1,n2不見(jiàn)得會(huì )存在,一般代表的是進(jìn)行的動(dòng)作的行數
function有下面這些參數
a:新增,a的后面可以接字符串,而這些字符串會(huì )在新的一行出現,目前的下一行
c:替換,c的后面可以接字符串,這些字符串可以替換n1,n2之間的行
d:刪除,因為是刪除,所以d后面通常不接任何參數
i:插入,i的后面可以接字符串,而這些字符串會(huì )在新的一行,目前的上一行
p:打印,也就是將某個(gè)選擇的數據打印出來(lái)
s:替換,可以直接進(jìn)行替換的工作
三、文件的格式化以及相關(guān)處理
1.格式化打印
printf '打印內容' 實(shí)際內容
關(guān)于C程序語(yǔ)言?xún),常?jiàn)的變量格式
%ns 那個(gè)n是數字,s代表的是string
%nd 那個(gè)n是數字,d代表的是整數
%N.nf 那個(gè)n與N都是數字,f代表浮點(diǎn)數
2.文件比較工具diff
diff就是用在比較兩個(gè)文件之間的區別,并且是行為單位來(lái)比較的,一般是用在A(yíng)SCLL純文本文件的比較上
diff的用法
diff [-bBi] from_file to_file
-b 忽略一行當中僅有多個(gè)空白的區別
-B 忽略空白行的區別
-i 忽略大小寫(xiě)的不同
3.如果我們要將舊的文件升級成為新的文件時(shí),我們可以先利用diff比較出文件的區別,并將區別文件制作成為補丁文件,再由補丁文件更新舊文件即可。
一般來(lái)說(shuō)我們使用diff制作出來(lái)的比較文件通常擴展名為。patch
更新:patch -pN < patch_file
還原:patch -R -pN < patch_file
【Linux認證基礎知識:Linux中正則表達式與文件處理】相關(guān)文章:
Linux中正則表達式與文件處理07-20
Linux認證基礎知識:linux操作系統目錄結構07-10
Linux認證概念10-29
Linux認證優(yōu)勢06-10
Linux認證考點(diǎn)06-25
Linux認證的概念09-09
Linux認證考試基礎知識試題及答案07-30
linux文件系統基礎知識匯總06-29
2017年Linux認證考試基礎知識06-11
Linux文件權限詳解06-27