0
考慮這個日誌文件混亂上的grep模式搜索
SN PID Date Status
1 P01 Fri Feb 14 19:32:36 IST 2014 Alive
2 P02 Fri Feb 14 19:32:36 IST 2014 Alive
3 P03 Fri Feb 14 19:32:36 IST 2014 Alive
4 P04 Fri Feb 14 19:32:36 IST 2014 Alive
5 P05 Fri Feb 14 19:32:36 IST 2014 Alive
6 P06 Fri Feb 14 19:32:36 IST 2014 Alive
7 P07 Fri Feb 14 19:32:36 IST 2014 Alive
8 P08 Fri Feb 14 19:32:36 IST 2014 Alive
9 P09 Fri Feb 14 19:32:36 IST 2014 Alive
10 P010 Fri Feb 14 19:32:36 IST 2014 Alive
當我做=>grep "P01" File
輸出爲:(如預期)
1 P01 Fri Feb 14 19:32:36 IST 2014 Alive
10 P010 Fri Feb 14 19:32:36 IST 2014 Alive
但當我這樣做= >grep " P01 " File
(注意前後空間P01)
我沒有得到任何輸出!
問:grep
匹配模式在一條線上,所以「P01」(周圍空間)應與P01的第一PID,因爲它有它周圍的空間....但目前看來,這種邏輯是錯誤的....我在這裏想念什麼明顯的事情!!!?
是的,它是一個'製表space' ,所以'tab-space'被認爲與grep中的'white-space'不同? – NoobEditor
通常「空白」是爲了包含空格,製表符,換行符,回車符,退格符,垂直製表符。選項卡與空間不同,所以是的,grep對待它們的方式不同。字符類'[[:space:]]'相當於'[\ t \ n \ r \ b \ v]',字符類'[[:blank:]]'相當於'[\ t] '(我認爲這是接近正確的...)見https://en.wikipedia.org/wiki/Ascii –
進一步調查:'\ b'不包括在'[[:space:]]' –