小编Aja*_*jay的帖子

使用sed找到匹配项后替换上一行的内容

我正在尝试替换搜索的前一行中的内容。

我的档案:

<RECORD>
<TOKEN data = "670"/>
<ID data ="10647043"/>
<NAME data="m11111"/>
Run Code Online (Sandbox Code Playgroud)

在这里,如果我搜索m11111,则需要转到上一行并将10647043替换为其他值。我尝试过的Sed:

sed '/m11111/{g;/=/s/=.*/="9283"\/>/g;};h' test.txt
Run Code Online (Sandbox Code Playgroud)

sed有办法吗?如果不使用sed,还有其他方法吗?

谢谢阿杰

bash sed

5
推荐指数
1
解决办法
2237
查看次数

标签 统计

bash ×1

sed ×1