>我有一堆带有字符串的文件,我想搜索特定的匹配项:">exampledata">
看起来像这样:
...(...name: Example; age: 21; version: 2131; exampledata: hello;) end
如果在一行中定义了"exampledata",则不执行任何操作,否则添加该字符串exampledata,并在版本号之后说一个数字(可以是1密码或最多5-6(,或者将其放在右括号">("之前,这始终是字符串中的模式。(即"示例数据"在版本之后和字符串的末尾。它后面只有一个">("。
sed '/exampledata:"/b; /version.....;/s/&"exampledata: 2"/'
这就是我到目前为止解决的问题,我不知道如何在版本交互式 BC 之后制作点。 在每一行中,可以有一个密码版本或更高的数字。 想法?
基本上,我正在寻找一个添加"示例数据:2;"的 sed 命令,例如,如果之前根本没有示例数据?(结果是这样的:嘭...(...版本: 98;示例数据:2;(
您的模式具有双引号,这些引号不会出现在数据中。
sed '/exampledata:/!s/version: [0-9]*;/& exampledata: 2;/'
/exampledata:/!
使命令在不包含exampledata:
的行上执行,然后执行更正确的替换。