0

我有这个 yaml 文件:

id:
  providerName: admin
  apiName: LagerAPI
  version: 1.0.0
uuid: 1297c3e5-24aa-4806-be05-0cc3f2decaff
type: HTTP
context: /wso/1.0.0
contextTemplate: /wso/{version}
tags: []
documents: []
lastUpdated: Apr 14, 2020 4:33:37 PM

并想在行context:contextTemplate:中将其值wso更改为test,这将是结果:

id:
  providerName: admin
  apiName: LagerAPI
  version: 1.0.0
uuid: 1297c3e5-24aa-4806-be05-0cc3f2decaff
type: HTTP
context: /test/1.0.0
contextTemplate: /test/{version}
tags: []
documents: []
lastUpdated: Apr 14, 2020 4:33:37 PM

如何使用bash 命令执行此操作?

谢谢 :)

4

2 回答 2

0

我找到了一个解决方案:

sed -i 's/wso/test/' file.yaml
于 2020-04-15T14:29:49.117 回答
0

以防万一wso该文件中有更多内容,这应该替换预期的内容。

sed '/^context/s/wso/test/;/^contextTemplate/s/wso/test/' file.yml
于 2020-04-15T21:12:59.360 回答