免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1772 | 回复: 5

[文本处理] 在特定字符串后面插入变量 [复制链接]

论坛徽章:
0
发表于 2016-06-21 16:57 |显示全部楼层
aa.cfg内容如下:
  1. hostname=""
  2. IP=""
复制代码
我想在hostname里面插入指定的变量

test=“”myhost“”

使用sed插入的时候,总是插入的是变量名,没有将内容带进去

sed -i '/hostname/{s/\"/&${test}/}' aa.cfg

执行之后就是如下:
  1. hostname="${test}"
  2. IP=""
复制代码


我想显示的是“myhost”,而不是变量名test,变量内容都带不进去,有点迷惑,还请大家指导一下。

论坛徽章:
3
程序设计版块每日发帖之星
日期:2016-02-23 06:20:0015-16赛季CBA联赛之八一
日期:2017-10-26 17:58:2515-16赛季CBA联赛之北控
日期:2017-11-02 10:50:56
发表于 2016-06-21 17:02 |显示全部楼层
sed 后使用双引号。
[root@ ~]# cat aa.cfg
hostname=""
IP=""
[root@ ~]# test="myhost"
[root@ ~]# sed -i "/hostname/{s/\"/&${test}/}" aa.cfg
[root@ ~]# cat aa.cfg   
hostname="myhost"
IP=""
[root@ ~]#

论坛徽章:
507
金牛座
日期:2014-02-26 17:49:58水瓶座
日期:2014-02-26 18:10:15白羊座
日期:2014-04-15 19:29:52寅虎
日期:2014-04-17 19:43:21酉鸡
日期:2014-04-19 21:24:10子鼠
日期:2014-04-22 13:55:24卯兔
日期:2014-04-22 14:20:58亥猪
日期:2014-04-22 16:13:09狮子座
日期:2014-05-05 22:31:17摩羯座
日期:2014-05-06 10:32:53处女座
日期:2014-05-12 09:23:11子鼠
日期:2014-05-21 18:21:27
发表于 2016-06-21 17:10 |显示全部楼层
回复 1# hgfg1645

用前面说的双引号或者这样

  1. test="myhost";sed '/hostname/s/"/&'"$test"'/' i
  2. hostname="myhost"
  3. IP=""
复制代码

论坛徽章:
2
luobin
日期:2016-06-17 17:46:36lufei
日期:2016-06-17 17:49:16
发表于 2016-06-21 17:16 |显示全部楼层
sed引用变量要使用""

论坛徽章:
0
发表于 2016-06-21 17:39 |显示全部楼层
回复 3# Herowinter

感谢
   

论坛徽章:
0
发表于 2016-06-21 17:40 |显示全部楼层
回复 2# 过过招


    原来这样啊, 我之前习惯用单引号来着,感谢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

DTCC2020中国数据库技术大会 限时8.5折

【架构革新 高效可控】2020年8月17日~19日第十一届中国数据库技术大会将在北京隆重召开。

大会设置2大主会场,20+技术专场,将邀请超百位行业专家,重点围绕数据架构、AI与大数据、传统企业数据库实践和国产开源数据库等内容展开分享和探讨,为广大数据领域从业人士提供一场年度盛会和交流平台。

http://dtcc.it168.com


大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP