我只需要使用sed来搜索文本文件并替换可能是不同值的数字。
这是我需要修改的行。
"Value1": "60",
我知道我可以做到:
sed -i's /“ 60” /“ 70” /'file.txt
但是这很可能在文件中找到其他项目,并且不管值如何我都不允许更改它。
我想做的是替换“ Value1”匹配后第二个双引号内的任何值。
我知道这是可以做到的,但我只是语法不正确。
答案 0 :(得分:0)
另一个答案中的命令也将替换e之后的值。 G。 "Value2":
。想必您想这样做:
sed -i 's/"Value1": ".*"/"Value1": "70"/' file.txt
答案 1 :(得分:0)
在gnu sed上尝试
sed -E 's/("Value1":\s*")60(",)/\170\2' file.txt
^ ^
更改两个指出的数字,第一个是您要搜索的数字,第二个是您要替换的数字