我有这个
88 ca ca.crt
89 cert client.crt
90 key client.key
在openvpn的client.conf中(数字是由vim显示的行号,而不是实际的文本),我想将ca.crt clent.crt client.key更改为右边的所有位于'./容易-RSA / 2.0 /键/'
我试过这种方式:
88,90s;^(\w) (\w);\1 easy-rsa/2.0/keys\2;
原来是'找不到图案'
我用这个解决了这个问题:
:88,90s;\(^\w\+\>\)\s\(\w\+\>\);\1 easy-rsa/2.0/keys/\2;
我在问题中犯的错误是:
1.引用必须在模式中转义,因此它应该\( \)
而不仅仅是()
关于解决方案的一些解释:
\w
只匹配可以组成单词的字符,因此请使用vim扩展正则表达式\+
匹配一个或多个\w
和\>
来暗示单词的结尾< / p>
和更简单的解决方案:
88,90s;\s\(\w*\); easy-rsa/2.0/keys/;
对不起因为我造成的麻烦,我还没有足够的声誉来回答我自己的问题。
答案 0 :(得分:2)
您也可以通过以下方式实现相同目标:
88,99s;\s\zs;easy-rsa/2.0/keys/;