sed一行内容处理后添加新的数据
问题描述
现在有一些dnsmasq配置文件需要处理
文件中有很多行下面配置
server=/a1.mzstatic.com/114.114.114.114
希望经sed
处理后,变成两行
server=/a1.mzstatic.com/114.114.114.114
ipset/a1.mzstatic.com/noproxy
问题出现的平台版本及自己尝试过哪些方法
尝试了a
命令,但是没法在添加的内容中使用匹配变量
echo "server=/a1.mzstatic.com/114.114.114.114" | sed "/^server=\/\([^\/]*\)\/[^/]*$/a ipset=\/\1\/noproxy" │root 9665 0.0 0.0 1117640 53028 ? S 13:09 0:00 /usr/bin/uwsgi-core --ini ne
server=/a1.mzstatic.com/114.114.114.114
ipset=/1/noproxy
\1
正则匹配变量不会被替换
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
又尝试了下字符串替换,之前没有使用对括号。可以达到想要的结果
为啥不用
echo -e
或者printf?,用awk实现也阔以啊