版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、正那么表達(dá)式一:表達(dá)式1、正那么用在:匹配數(shù)據(jù)、包含匹配 grep、awk、sed命令通配符用在:匹配文件名稱、完全匹配find /-name abc*ls cp元字符作用*前一個字符匹配0次或任意屢次.匹配除了換行符外任意一個字符A匹配行首,例如:Ahello會匹配以hello 開頭的行$匹配行尾,例如:Ahello會匹配以hello 結(jié)尾的行匹配中括號中指定的任意字符,只匹配 一個字符,例如aoeiu匹配任意一個元 音字母,0-9匹配任意一位數(shù)字, a-z0-9匹配小寫字母和一位數(shù)字構(gòu)成 的兩個字符A匹配除中括號的字符以外的任一個字 符,例如A0-9匹配任意一位非數(shù)字符,Aa-z表示任意一
2、位非小寫字母轉(zhuǎn)義符,用于取消講特殊符號的含義取 消n表小其前面字符恰好出現(xiàn)n次,例如0-94 匹配 4 位數(shù)字,13-80-99匹配 號n.表小其前面的字符出現(xiàn)不小于n次,例如,0-92,表示兩位及以上的數(shù)字n,m表示其前面的字符至少出現(xiàn)n次,最多 出現(xiàn)m次,例如,a-z6,8匹配6到 8位的小寫字母2*第一個:grep grep grep grepa*;aa*,aaa*aaaaatext.txttext.txttext.txt*text.txt匹配所有內(nèi)容,包括空白行/匹配至少包含一個a的行匹配最少包含兩個連續(xù)a的字符/匹配至少包含四個連續(xù)a的字符串第二個:.S.d #會匹配在s和d這兩個字
3、母之間一定有兩個字符的單詞S.*d #會匹配在s和d這兩個字母之間有任意字符*#匹配所有內(nèi)容第三個久?M匹配以大寫M開頭的行n$匹配以小寫n結(jié)尾的行峙匹配空白行第四個口Saoid#匹配s和i字母中,要不是a、要不是o0-9#匹配任意一個數(shù)字,a-z#匹配用小寫字母開頭的行,Aa-z匹配不用小寫字母開頭的行,a-zA-Z匹配不用字母開頭的行第五個轉(zhuǎn)義符:$#匹配使用.結(jié)尾的行第六個n表示其前面的字符恰好出現(xiàn)n次a3#匹配a字母連續(xù)出現(xiàn)三次的字符串,含3次以上xc3u 在x和u之間只能有三個c0-93 #匹配包含連續(xù)的三個數(shù)字的字符串0-93,a-z #匹配最少用連續(xù)三個數(shù)字開頭的行n,m 匹配其
4、前面的字符至少出現(xiàn)n次,最多出現(xiàn)m次;Sa1,3i#匹配在字母s和字母i之間有最少一個a,最多三個a注意:定界符的問題,去除文本里邊的內(nèi)容小寫d加大寫G ,從光標(biāo)開始清到行尾例子:日期的例子0-94-0-92-0-92#匹配日期格式 YYYY-MM-DD0-91,3.0-91,3.0-91,3.0-91,3#匹配 ip 地址,可以提取字符截取命令1、cut字段提取命令2、printf 命令3、awk命令4、sed命令 1、cut字段:grep /bin/bash /etc/passwd | grep -v foot rootlocalhost#cut 選項(xiàng)文件名選項(xiàng):-f列號:提取第幾列-d分
5、隔符:根據(jù)指定分隔符分割列注意:默認(rèn)分割符石tab鍵例子:IDNamegenderMark1furongF852fengjF603cangF70#cut-f 2student#cut-f 2,4student#vi student.txt/截取第二列#grep 尋找截取第二列和第四列/bin/bash /etc/passwd | grep -v root | cut -f 1 -d :/bin/bash 在/etc/passwd這個文件+管道+除root +管道+截第一列:分割的- cut -d :-f 1,3 /etc/passwd截取第一三列 以:號分割的;注意cut命令不能以空格作為分隔
6、符printf 輸出類型輸出格式輸出內(nèi)容輸出類型:- %ns:輸出字符串.n是數(shù)字指代輸出幾個字符- %ni:輸出整數(shù).n是數(shù)字指代輸出幾個數(shù)字- %m,nf:輸出浮點(diǎn)數(shù).m和n是數(shù)字,指代輸出的整數(shù)位和小數(shù)位,如 8.2f代 表輸出8位數(shù),其中2位是小數(shù),6位是整數(shù).輸出格式:- a輸出警告聲音- b 輸出退格鍵,也就是Backspace- f清楚屏幕- n 換行- r 回車,也就是Enter鍵- t水平輸出退格鍵,也就是Tab鍵-v垂直輸出退格鍵,也就是Tab鍵例子:#printf %s 1 2 3 4 5 6123456#printf %s %s %s 1 2 3 4 5 6%s%s12
7、3456#printf %s %s % si 2 3 4 5 61 2 34 5 6#printf %st %st %sn 1 2 3 4 5 6123456#printf%s $(cat student.txt)/ 不調(diào)整輸出格式#printf %st%st %st %sn $(cat student.txt)/ 調(diào)整輸出格式,#cat student.txt | printf /printf 不支持?jǐn)?shù)據(jù)流操作,此命令不成立在awk命令的輸出中支持 print和printf命令print: print會在每個輸出之后自動參加一個換行符,(Linux默認(rèn)沒有print命令) printf: p
8、rintf是標(biāo)準(zhǔn)的格式輸出命令,并不會自動參加換行符,如果需要換行, 需要手工參加換行符awk命令:#awk條件1動作1條件2動彳2.文件名 條件(Pattern):一般使用關(guān)系表達(dá)式作為條件x 10判斷變量x是否大于10x =10大于等于 x = 70 printf $2 n sed命令#通過命令行的操作替換為我需要的字符串#vi student.txtIDNamegenderMark1furongF852fengjF603cangF70#sed是一種幾乎包括在所有 UNIX平臺包括Linux的輕量級流編輯器.sed主 要是用來將數(shù)據(jù)進(jìn)行選取、替換、刪除、新增的命令.#sed選項(xiàng)動作文件名選
9、項(xiàng)- n 一般sed命令會把所有數(shù)據(jù)都輸出到屏幕如果加-n選擇那么只會把經(jīng)過sed命 令處理的行輸出到屏幕- e允許對輸入數(shù)據(jù)應(yīng)用多條sed命令編輯- i用sed的修改結(jié)果直接修改讀取數(shù)據(jù)的文件,而不是由屏幕輸出.支持的動作:# a追加,在當(dāng)前行后添加一行或多行# c行替換,用c后面的字符串替換原數(shù)據(jù)行# i插入,在當(dāng)前行插入一行或多行,d:刪除,刪除指定的行# p打印,輸出指定的行# s字用替換,用一個字符串替換另一個字符串.格式為:行范圍s/舊孜用/新字申/g和vim中的替換格式類似# sed 2p students.txt 輸出 all# sed -n 2p students.txt輸出
10、第二行# sed 2dstudents.txt 刪除第 2 行# sed 2,4d, students.txt刪除第 2 行 到第 4 行# sed 2a piao liang jiu shi ren xing students.txt/ 在第二行后插入這一行內(nèi)容,只修改輸出,不修改源文件,#sed 2i piao liang jiu shi ren xing students.txt/ 在第二行插入這一行內(nèi)容, 只是修改輸出,#sed 4a/70/100/g student.txt 第 4 行的 70 改成 100,不修改原文件#sed -i 4a/70/100/g student.txt
11、第 4行的 70 改成 100,修改原文件#sed -e s/furong/g ; s/fengj/g student.txt / 同時執(zhí)行兩條命令用分號隔開, 并修改原文件,將furong、fengl字段改為空字符處理命令sort wcsort選項(xiàng)文件名選項(xiàng)- f忽略大小寫- n以數(shù)值型進(jìn)行排序,默認(rèn)使用字符串排序- r反向排序- t指定分隔符,默認(rèn)分隔符是制表符-k n ,m根據(jù)指定字段范圍排序.從第n字段開始,m字段結(jié)束默認(rèn)到行尾 注意:sed跟vi命令根本相似,但vi是交互式的、面向用戶的,而 sed是面向 程序的 例子:#sort /etc/passwd排序用戶信息文件 a-z#sort -r /etc/passwd反向排序z-a#sort -t :-k 3,3 /etc/passwd制定分隔符是“:,用第三字段
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 四年級數(shù)學(xué)(小數(shù)加減運(yùn)算)計(jì)算題專項(xiàng)練習(xí)與答案匯編
- 自愿加入保安協(xié)議書(2篇)
- 購銷協(xié)議書(2篇)
- 南京工業(yè)大學(xué)浦江學(xué)院《數(shù)字電子技術(shù)》2022-2023學(xué)年第一學(xué)期期末試卷
- 成都某招商會展中心裝修工程施工組織設(shè)計(jì)
- 方方圓圓說課稿
- 獨(dú)無的我說課稿
- 肝硬化失代償期
- 《氧化碳制取的研究》說課稿
- 南京工業(yè)大學(xué)浦江學(xué)院《工程招投標(biāo)與合同管理》2023-2024學(xué)年第一學(xué)期期末試卷
- 2023年-2024年小學(xué)數(shù)學(xué)教師《小學(xué)數(shù)學(xué)教學(xué)論》考試題庫及答案
- 2024年中央金融工作會議精神心得體會1000字(8篇)
- 2024入團(tuán)考試題庫考試100題題庫(含答案)
- 保安培訓(xùn)記錄內(nèi)容
- 公務(wù)快艇常規(guī)安全
- 高中生活如何啟航 課件 2023-2024學(xué)年高一主題班會
- 《互聯(lián)網(wǎng)的應(yīng)用》課件
- 2024山東能源集團(tuán)高校畢業(yè)生校園招聘筆試參考題庫附帶答案詳解
- 初中九年級美術(shù)期末藝術(shù)測評指標(biāo)試卷及答案
- 新能源科學(xué)與工程專業(yè)職業(yè)生涯規(guī)劃
- 高考作文等級評分標(biāo)準(zhǔn)
評論
0/150
提交評論