[20210802]grep奇怪的過濾.txt

lfree發表於2021-08-03

[20210802]grep奇怪的過濾.txt

--//使用grep過濾遇到的奇怪問題.做一個記錄.

$ cat a3.txt
struct ktetb[25], 8 bytes                   @308
   ub4 ktetbdba                             @308      4280320
   ub4 ktetbnbk                             @312      128
struct ktetb[26], 8 bytes                   @316
   ub4 ktetbdba                             @316      4288512
   ub4 ktetbnbk                             @320      128
aaa ^^st

--//^在正規表示式裡面解析為開頭.但是有點奇怪的是
$ egrep "^^^^^^^^^^st" a3.txt
struct ktetb[25], 8 bytes                   @308
struct ktetb[26], 8 bytes                   @316

$ egrep "^^st" a3.txt
struct ktetb[25], 8 bytes                   @308
struct ktetb[26], 8 bytes                   @316

$ egrep "\^\^st" a3.txt
aaa ^^st

--//egrep執行,無論前面多少^開頭,都是顯示行開頭是st的行。要轉義一下才支援顯示^^st的行.而如果寫成如下:

$ grep "^^st" a3.txt

--//沒有輸出.

$ grep "\^\^st" a3.txt
aaa ^^st

--//如果看手冊:
Egrep is the same as grep -E.  Fgrep is the same as grep -F.

-E, --extended-regexp
Interpret PATTERN as an extended regular expression (see below).


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2784840/,如需轉載,請註明出處,否則將追究法律責任。

相關文章