我试图在此文件 /etc/dovecot/conf.d/10-ssl.conf 中用空字符或无字符替换字符 <
我的脚本是
sudo sed -i 's/\<\/etc\/dovecot\/private\/dovecot\.pem/\/etc\/dovecot\/private\/dovecot\.pem/g' /etc/dovecot/conf.d/10-ssl.conf
它没有工作然后累了: -
sudo sed -i '0,/\<\/etc\/dovecot\/private\/dovecot\.pem/s/\<\/etc\/dovecot\/private\/dovecot\.pem/\/etc\/dovecot\/private\/dovecot\.pem/' /etc/dovecot/conf.d/10-ssl.conf
它也没有奏效。出了什么问题,我该怎么做?此外,它很长。如何将其拆分为多行?
在 sed 中,\<
匹配“单词的开头”,而普通<
匹配字面意思。
要获得更易读的替换,请更改分隔符:
sed -i 's=</etc/dovecot/private/dovecot\.pem=/etc/dovecot/private/dovecot.pem=g'
无需在替换部件中使用反斜线点。
您可以使用捕获进一步缩短指令:
sed -i 's=<\(/etc/dovecot/private/dovecot\.pem\)=\1=g'
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句