sed实现key-value变量替换

使用变量替换URL实现key-value值替换

在使用持续集成打包前,为了匹配不同的测试环境,需要将某些URL作为变量,先对配置文件进行参数替换,再打包,然后编译的包就可以直接部署到测试环境中。 因此产生了这个需求,以下是实际中的一个例子:

sed -i "s#signetServUrl\":.*#signetServUrl\": \"$signetServUrl\",#"  app/src/main/assets/signet_config.json

2个要点:

  1. 使用#作为URL的分割符,可以避免转义反斜杠;
  2. 使用双引号,用于引用变量URL;

空格对齐替换

sed替换中使用行首空格,主要是为了对齐好看,这时候需要使用反斜杠,不然的话,行首空格就插入不了。这里的例子是为了解决一个Android构建错误,需要将jcenter库放在google库后面,代码如下:

sed -i '/google()/a\        jcenter()' build.gradle

匹配到google()后,在下一行增加jcenter()库,并使用空格,使得代码对齐;效果如下:

2个小用法,记之。

sed实现key-value变量替换相关推荐

  1. sed当中使用变量替换以及执行外部命令

    转自:http://blog.csdn.net/linwhwylb/article/details/7184748 在使用sed对日志或者其它文本进行parse的过程当中,有时候我们需要引用外部变量的 ...

  2. linux 调用外部变量,sed当中使用变量替换以及执行外部命令

    转自:http://blog.csdn.net/linwhwylb/article/details/7184748 在使用sed对日志或者其它文本进行parse的过程当中,有时候我们需要引用外部变量的 ...

  3. linux shell 替换字符串的几种方法,变量替换${},sed,awk

    变量a是一个带空格的字符串,现在用"hdpusr400"替换变量a中的"hduser302": [liusiyi@localhost ~]$ echo $a - ...

  4. shell 替换字符串的几种方法,变量替换${},sed,awk

    变量a是一个带空格的字符串,现在用"hdpusr400"替换变量a中的"hduser302": 1 [liusiyi@localhost ~]$ echo $a ...

  5. linux替换变量字符串,linux shell 替换字符串的几种方法,变量替换${},sed,awk

    变量a是一个带空格的字符串,现在用"hdpusr400"替换变量a中的"hduser302": [liusiyi@localhost ~]$ echo $a - ...

  6. YAML文件(.yml)中的键(key)通过变量引用来设置

    转自:https://www.cnblogs.com/haycheng/p/13299183.html 通过变量引用设置配置量的[值](value) 在YAML文件中,一个配置量的值可以通过引用另一个 ...

  7. sql语句用变量替换表名_使用内存优化表替换SQL临时表和表变量

    sql语句用变量替换表名 TempDB usage can be considered as a performance bottleneck for workloads that use SQL t ...

  8. VS Code 配置调试参数、launch.json 配置文件属性、task.json 变量替换、自动保存并格式化、空格和制表符、函数调用关系、文件搜索和全局搜索、

    1. 生成配置参数 对于大多数的调试都需要在当前项目目录下创建一个 lanch.json 文件,位置是在当前项目目录下生成一个 .vscode 的隐藏文件夹,在里面放置一些配置内容,比如:settin ...

  9. linux 变量替换字符串,变量替换 字符串处理

    变量替换 非空 空 不存在 Var=${Str-Expr} Str 空 Expr Var=${Str:-Expr} Str Expr Expr 不存在至stderr Var=${Str?Expr} S ...

最新文章

  1. 客快物流大数据项目(二十五):初始化业务数据
  2. ??征集Sql Server2005设置Windows集成认证资料
  3. 当maven说“直到MyRepo的更新间隔过去时,才会重新尝试解析”,该间隔在哪里指定?
  4. 解决TCP网络传输“粘包”问题
  5. QT中添加背景图片,颜色,以及字体等
  6. 腾讯云yum操作实现CentOS 7.6 64位Linux系统图形界面的安装和vnc的搭建
  7. WEB前端 vue学习一使用 vue-cli 搭建项目
  8. 搜索引擎ElasticSearchV5.4.2系列一之ES介绍
  9. jsp项目开发案例_Laravel 中使用 swoole 项目实战开发案例一 (建立 swoole 和前端通信)life...
  10. 图像风格迁移(Neural Style)简史
  11. PAT 1012. 数字分类 (20)
  12. Redis 缓存 + Spring 的集成示例
  13. 十天学会单片机Day4串行口通信
  14. leo免费的excel操作界面的进销存供你下载使用
  15. DOS命令学习(从入门到精通)
  16. Separating Axis Theorem(SAT)
  17. ARPG、MMORPG、MOBA、卡牌类、棋盘类游戏服务器架构图
  18. 领导提拔你的原因,只有这点最真实,其他都是瞎扯!
  19. 苹果的「AI 建筑师」GAUDI:根据文本生成 3D 场景
  20. JAVA编程基础(四)开启Java语言编程之旅

热门文章

  1. 拷贝原站点有用文章(合并页)
  2. ios-破解ipa包中的png 图片
  3. 利用requestxpath爬取网站图片以及图片信息
  4. android 获取电池最大容量,地表最大容量:Energizer推出16000mAh电池安卓机,续航长达一个周...
  5. datadog windows 环境安装
  6. 易基因|ctDNA甲基化测序分析(ctDNA-WGBS)用于癌症检测和分子分型 | 精准医学
  7. k8s master节点状态为 NotReady问题解决
  8. div+css+jquery仿写HTML京东首页的练习及一些关于oo css的总结
  9. VB6 加载控件Windows Common Controls 6.0(mscomctl.ocx)失败提示“对象库未注册”
  10. python编程玩具有哪些_python 全栈开发,Day133(玩具与玩具之间的对话,基于jieba gensim pypinyin实现的自然语言处理,打包apk)...