sh - 如何使用 shell 脚本和匹配表达式替换文件中的子字符串?
问题描述
我需要替换 CoffeeScript 文件中的特定字符串。该文件包含以下值:
version : '1.3.3.1204.0'
buildVersion : '1.3.3.1204.4'
使用 shell 脚本,我想替换引号内的值,仅此而已。请注意,名称和之间可以有 X 个空格:
期望的输出:
version : '2.0.0.0101.0'
buildVersion : '2.0.0.0101.1'
解决方案
使用sed:
$ sed "s@'1\.3\.3\.1204\.0'@'2.0.0.0101.0'@;\
s@'1\.3\.3\.1204\.4'@'2.0.0.0101.1'@" file
输出
version : '2.0.0.0101.0'
buildVersion : '2.0.0.0101.1'
笔记
-i
如果要即时更换,请添加开关
推荐阅读
- libgdx - LibGdx 坐标问题
- rx-java2 - sourceObservable 完成后发射项目的一种方法
- python - 带有 argon2_cffi 的哈希密码
- python - Django 2 request.POST 未使用 instance=request.user 保存到数据库
- python - 代理无法使用 firefox geckodriver 处理 python selenium
- python - 如何过滤熊猫数据框中包含空列表的行?
- node.js - NodeJS 和 AWS Lambda 的异步等待问题
- python - CatBoost 边框
- c# - 带有 SteamVR 的 Meta 2;无法在 Unity 中移动(几乎)冻结
- ios - 当我们使用两个不同的 xcode 版本创建 IPA 文件时,ipa 文件有什么不同吗?