正則表達式就是處理字符串的方法,它是以行爲單位來進行字符串的處理操做;git
grep命令的使用正則表達式
[:alnum:]表示字符爲0~9,a~z,A~Z;ide
[:alpha:]表示字符爲a~z,A~Z;工具
[:upper:]表示字符爲A~Z;spa
[:lower:]表示字符爲a~z;3d
[:digit:]表示字符爲0~9blog
^在[]內表示反向選擇,在括號外表示定義在行首;字符串
$表示行尾的意思,例如u$表示行尾字符是uit
.(小數點)表示【必定要有一個任意字符】的意思;class
*(星號)表示【重複前一個字符,0到無窮屢次】的意思;
{}:限制一個範圍區間內的重複字符數
sed工具,用於行數據的新增、刪除、替換、選取等功能,最後一行能夠用$d表示
刪除d
新增i/a:增長行數據,i/a表示在行前/後
替換c:n1,n2c表示將第幾行跟第幾行之間內容替換,若是替換的內容不止一行,須要在每行之間加\
顯示p:直接取出須要的行,-n安靜模式,不讓數據重複輸出
部分數據的查找替換:sed ‘s/要被替換的字符/新的字符/g’
直接修改:sed -i(請勿在系統配置文件直接操做)
egrep:擴展正則表達式
+:重複一個或一個以上的前一個RE字符,如查找god,good,goood等字符,能夠用
egrep -n ‘go+d’
?:0個或1個的前一個RE字符,如gd,god,可用egrep ‘go?d’
|:用或的方式找出數個字符串,如查找gd或good這2個字符串,可用egrep -n ‘gd|good’
( ):找出羣組的字符串,查找glad或good,可用egrep -n ’g(la|oo)d’
( )+:多個重複羣組的判別,如Axyzxyzxyz,可用egrep -n ‘A(xyz)+C’
格式化打印:printf
\a警告聲音輸出
\b退格鍵
\f 清除屏幕
\n 輸出新的一行
\r 回車
\t 水平tab
\v 垂直tab
\xNN NN爲兩位數的數字,能夠轉換數字成爲字符。
%ns n是數字,s表明多少個字符
%ni i表明多少整數位數
%N.nf n,N都是數字,f表明小數點
awk: 數據處理工具
能夠使用【字段】爲根據,進行數據的從新整理與輸出
NF 每一行$0所擁有的字段總數
NR 目前awk所處理的是第幾行數據
FS 目前的分隔字符
diff :主要用在純文本文件方面的新舊版本比對
cmp:在字節方面比對
文件格式化處理
patch: patch 命令能夠將舊版數據更新到新版
pr:文件打印設置pr +文件