grep 指令請益 - Linux

Table of Contents

各位好,最近才開始學習在MAC使用GCC

Mac從G++4.2.1更新到G++ 4.9.4編譯CPP檔案,發生以下的warnings,


/var/folders/z8/01n_7c6s4pbchqppl8cvbnk00000gn/T//ccwgMHWc.s:4:11: warning:
section “__textcoal_nt” is deprecated

.section __TEXT,__textcoal_nt,coalesced,pure_instructions


這似乎是個Bug,stackoverflow有人給一個範例解決這個問題

g++-6 main.cpp -o main 2>&1 >/dev/null | grep -v -e '^/var/folders/*' -e
'^[[:space:]]*\.section' -e '^[[:space:]]*\^[[:space:]]*~*'
-------------------------------

'^[[:space:]]*\^[[:space:]]*~*'看不太懂

前面應該是待搜尋的行首是[:space:],可找重複零個或多個的[:space:]

後面的'\^[[:space:]]*~*',google沒找到說明可以參考,無法理解


請教各位先進能否給些指點,謝謝


相關文章及link可參考: https://bit.ly/3e5S9eP
--

更新
原來的warning裡面取一小節完整範例如下

/var/folders/z8/01n_7c6s4pbchqppl8cvbnk00000gn/T//ccgr3IWK.s:4:11: warning:
section "__textcoal_nt" is deprecated
.section __TEXT,__textcoal_nt,coalesced,pure_instructions
^ ~~~~~~~~~~~~~

經過反覆的查證終於瞭解
'^[[:space:]]*\^[[:space:]]*~*'是用來抓" ^ ~~~~~~~~~~~~~"

感謝各位,學到不少,謝謝


--

All Comments

Kama avatarKama2020-05-25
任何一個非空白字元?
Sandy avatarSandy2020-05-29
^是行首;\^是^被跳脫字元\跳脫成純文字的^字元
Daniel avatarDaniel2020-05-29
丟去一些分析網站像 regex101.com 會有解釋