免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1718 | 回复: 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@ ~]#

论坛徽章:
475
金牛座
日期: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# 过过招


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

本版积分规则 发表回复

SACC2019中国系统架构师大会

【数字转型 架构演进】SACC2019中国系统架构师大会,8.5折限时优惠重磅来袭!
2019年10月31日~11月2日第11届中国系统架构师大会(SACC2019)将在北京隆重召开。四大主线并行的演讲模式,1个主会场、20个技术专场、超千人参与的会议规模,100+来自互联网、金融、制造业、电商等领域的嘉宾阵容,将为广大参会者提供一场最具价值的技术交流盛会。

限时8.5折扣期:2019年9月30日前


----------------------------------------

大会官网>>
  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP