使用 sed 来修改一个配置文件问题求教

2015-08-24 19:54:47 +08:00
 qq674949301
某路径下这个配置文件:
#!/bin/sh

ENABLED=yes
PROCS=chinadns
ARGS="-b 127.0.0.1 -p 5353 -c /opt/etc/chnroute.txt -s 114.114.114.114,208.67.222.222:443,8.8.8.8:53"
PREARGS=""
DESC=$PROCS
PATH=/opt/sbin:/opt/bin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

. /opt/etc/init.d/rc.func

我想修改 114.114.114.114 为本地的 DNS ,还有我已经指定这个$DNS 为本地的 DNS ,我该如何用 sed 命令修改:
EP:
#!/bin/sh

DNS=`sed -n '1p' /jffs/dns.list`

sed ........

sed 请问各位这部分该如何实现?
1438 次点击
所在节点    问与答
3 条回复
neilp
2015-08-24 20:08:09 +08:00
sed -i 's/^ARGS=\(.*\)114.114.114.114\(.*\)$/ARGS=\15.5.5.5\2/' a.txt
neilp
2015-08-24 20:10:12 +08:00
用这个:

sed "s/^ARGS=\(.*\)114.114.114.114\(.*\)$/ARGS=\1$DNS\2/" a.txt
qq674949301
2015-08-26 09:12:16 +08:00
@neilp thanks

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/215664

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX