sed + 替换特定语法后的内容
Sed + replacing the content after specific syntax
我们尝试替换group word后面第三个字段的内容,
文件中的以下行始终具有相同的语法,除了更改的第三个字段
"groups": [{"group": "string”}],
第三个字段包含 A-Z
, a-z
, 数字 , ( _ - .
)
组合的任意字符
第三个字段总是用双引号引起来
例子
"groups": [{"group": "MOVIES.ARE.GOOD”}],
"groups": [{"group": "no_one.ok”}],
"groups": [{"group": "evry_one.lol”}],
"groups": [{"group": "NO_VALUES_ARE-GOOD”}],
"groups": [{"group": "___scripts”}],
等等
我尝试使用以下 sed ,但没有成功
var=my.word__that.I.need.to.replace
sed -i "s/\(group\": \"\)[*]*/$var/" file
假设:
- 所有引用都是
"
。请参阅上面@Gordon 的评论。
- 您想替换每行中的第 3 个字段。
- 替换值存储在变量中。
我在这个文件内容(文件名data.txt)上测试了我的命令:
"groups": [{"group": "MOVIES.ARE.GOOD”}],
"groups": [{"group": "no_one.ok”}],
"groups": [{"group": "evry_one.lol”}],
"groups": [{"group": "NO_VALUES_ARE-GOOD”}],
"groups": [{"group": "___scripts”}],
这对我有用:
newword=TATA
sed -i "s/\(group\": \"\).*/$newword\"\}\],/" data.txt
基本上,group": "
之后的所有内容都被 TATA"}],
替换
我的结果文件现在包含:
"groups": [{"group": "TATA"}],
"groups": [{"group": "TATA"}],
"groups": [{"group": "TATA"}],
"groups": [{"group": "TATA"}],
"groups": [{"group": "TATA"}],
我们尝试替换group word后面第三个字段的内容,
文件中的以下行始终具有相同的语法,除了更改的第三个字段
"groups": [{"group": "string”}],
第三个字段包含 A-Z
, a-z
, 数字 , ( _ - .
)
第三个字段总是用双引号引起来
例子
"groups": [{"group": "MOVIES.ARE.GOOD”}],
"groups": [{"group": "no_one.ok”}],
"groups": [{"group": "evry_one.lol”}],
"groups": [{"group": "NO_VALUES_ARE-GOOD”}],
"groups": [{"group": "___scripts”}],
等等
我尝试使用以下 sed ,但没有成功
var=my.word__that.I.need.to.replace
sed -i "s/\(group\": \"\)[*]*/$var/" file
假设:
- 所有引用都是
"
。请参阅上面@Gordon 的评论。 - 您想替换每行中的第 3 个字段。
- 替换值存储在变量中。
我在这个文件内容(文件名data.txt)上测试了我的命令:
"groups": [{"group": "MOVIES.ARE.GOOD”}], "groups": [{"group": "no_one.ok”}], "groups": [{"group": "evry_one.lol”}], "groups": [{"group": "NO_VALUES_ARE-GOOD”}], "groups": [{"group": "___scripts”}],
这对我有用:
newword=TATA
sed -i "s/\(group\": \"\).*/$newword\"\}\],/" data.txt
基本上,group": "
之后的所有内容都被 TATA"}],
我的结果文件现在包含:
"groups": [{"group": "TATA"}],
"groups": [{"group": "TATA"}],
"groups": [{"group": "TATA"}],
"groups": [{"group": "TATA"}],
"groups": [{"group": "TATA"}],