我需要用正则表达式替换 named.conf 中的这个语句
masters {
10.11.2.1;
10.11.2.2;
};
我所有使用 sed/vi 的方法都不起作用
%s/masters.*\}\;//g
不匹配。还尝试使用 /s \s 等来匹配换行符。
在 vim 中,您可以使用 强制模式匹配换行符,\_例如:
%s/masters {\_[^}]*};//g
.*用更保守的东西替换是很重要的,比如[^}]*前缀为\_,因为*它是贪婪的,所以\_.*会尝试将所有内容都匹配到文档的末尾。