linux之正規表示式 資料 檔案 處理

2021-10-23 17:30:24 字數 2916 閱讀 2835

目的:使用字元進行[查詢,替換,刪除].

工具:vi,sed,awk.

alnum-英文大小寫及字元和數字

alpha:英文大小寫字元

blank:空格鍵與tab鍵

cntrl:控制鍵盤

digit:數字0-9

graph:所有按鍵

lower:小寫字母

print:被列印的字元

punct:標點字元

upper:大寫字元

space:空白字元,如:空格鍵,tab

xdigit:十六進製制的數字型別

grep -a -b --color=

auto 查詢字元 filename

-a:後面加數字為after,指定出後面n行資訊

-b:後面加數字為befer,指定出前面n行資訊

--color=

auto

:選取資料列的顏色

舉例

"open source" is a good mechanism to develop programs.

football game is not use feet only.

this dress doesn't fit me.

however,

this dress is about $ 3183 dollars.

gnu is free air not free beer.

her hair is very beauty.

i can't finish the test.

oh! the soup taste good.

motorcycle is cheap than car.

this window is clear.

the symbol '*' is represented as start.

oh! my god!

the gd software is a library for drafting programs.

you are the best is mean you are the no.1..

i like dog.

google is the best tools for search keyword.

goooooogle yes!

go! go! let's go.

# i am

a.查詢關於'the'的字元

grep -n 'the'

[檔名]

b.查詢關於'the'的字元-不區分大小寫

grep -in 'the'

[檔名]

c.查詢關於'test'或'taste'的字元-不區分大小寫

思路:共同點t&st

grep -n 't[ae]st'

[檔名]

d.查詢字元'oo'

grep -n 'oo'

[檔名]

e.查詢資料oo不出現小寫字元

grep -n '[^a-z]oo'

[檔名]

f.查詢資料為數字與英文

grep -n '[0-9]'

[檔名]

g.得到資料有序排列

grep -n '[^[:lower:]]oo'

[檔名]

h.將查詢資料在查詢結果首行首列

grep -n '^the'

[檔名]

i.列出查詢資料開頭為小寫的字元

grep -n '^[a-z]'

[檔名]

j.列出查詢資料捨棄英文本母

grep -n '^[^a-za-z]'

[檔名]

k.列出查詢資料為行尾結束為.的資料

grep -n '\.$'

[檔名]

l.windows字元轉換列印行資料

cat -an [檔名]

| head -n -

10| tail -n 6

m.查詢空白行資料

grep -n '^$'

[檔名]

n.查詢資料中執行的指令碼

cat -n [指令碼目錄]

o.查詢出特殊字元『g?

?d』 grep -n 'g...d'

[檔名]

p.查詢『ooo*』字元

grep -n 'ooo*'

[檔名]

sed-目的:將資料進行替換,刪除,新增,選取.

sed [-nefr] [操作]

printf '列印格式' 實際內容

a-警告聲音輸出

b-退格鍵

f-清除螢幕

n-輸出新的一行

r-回車鍵

t-水平按鍵

v-垂直按鍵

xnn-數字轉為字元

awk

awk 『條件型別1

』 filename

目的:同乙個檔案(軟體)的新舊版本的差異,利用ascii對比

mkdir -p [先建立測試用的目錄]

diff [

-bbi] from-file to-file

from-file:原始檔名稱

to-file:對比檔名稱

-bbi:忽略大小寫以及空白檔名稱

舉例:/tmp/etstpw內的passwd.old與passwd.

new製作補丁檔案

diff -naur passwd.old passwd.

new>passwd.patch

目的:同乙個檔案(軟體)的新舊版本的差異,利用bit對比

cmp -l file1 file2

-l:將不同位元組列舉出來

Linux之正規表示式

正規表示式用來在檔案中匹配符合條件的字串,正則是包含匹配。grep awk,sed等命令可以運動正規表示式。正規表示式匹配得到的結果是行 萬用字元用來匹配符合條件的檔名,萬用字元是完全匹配。ls.find.cp這些命令不支援正規表示式,所以只能用shell自己的萬用字元來進行匹配了。例 grep a...

linux之正規表示式

正規表示式,又稱正規表示式 正規表示法 正規表示式 規則表示式 常規表示法 英語 regular expression,在 中常簡寫為 regex regexp 或 re 電腦科學的乙個概念。正規表示式使用單個字串來描述 匹配一系列符合某個句法規則的字串。在很多文字編輯器裡,正規表示式通常被用來檢索...

Linux之正規表示式

字元含義 字串開始 配字串結尾 匹配0個或多個的前乙個字元。注意shell中的 是萬用字元,可以匹配任意字元。與正規表示式中的有差異。匹配任意單字元 示例1 句點匹配 句點匹配單個字元 匹配許可權 x.x.x 前4個字元之後為xc xc.示例2 行首匹配 匹配目錄 d匹配行首為001的 001 每行...