解析日誌文件時,我經常使用:g!/<string I want to keep in the log>/d
從日誌中刪除不包含感興趣的字符串的所有行。那麼,現在我想用這個強大的命令來替換所有與空行不匹配的字符串。使用Vim將所有*非*匹配的字符串替換爲另一個字符串
我能找到一點上:g!
沒有信息,比我已經使用命令等,並且該格式是:g!/<match string>/<cmd>
,其中cmd
是「ex命令」,或之一:在vim的命令。
所以我認爲可以使用s
命令來做到這一點,但我的理解是有限的這方面。任何人都可以建議如何正確格式化命令?或者還有其他工具更適合這項任務嗎? (sed/awk?我沒有真正使用過這些,但知道它們非常強大)。
另一種選擇是在Python中踢出並寫一個實用程序來爲我做。
':V /正則表達式/常態! 0D'是另一種選擇。 – Conner
另外':v/regex/pu_ | -d' – Conner