首页 > 解决方案 > sed:在替换部分重复模式

问题描述

我想用重复模式(PATERN2)替换正常的 PATERN1,在我的例子中重复“N”500 次。

是否可以简单地使用 sed 来完成?

sed 's/PATERN1/N{500times}/g'

干杯,

里卡多

标签: regexunixsed

解决方案


使用sed你可以这样做:

s="foo abc PATTERN foo bar PATTERN"

sed "s/PATT[^[:blank:]]*/$(printf '%.0bN' {1..10})/g" <<< "$s"

foo abc NNNNNNNNNN foo bar NNNNNNNNNN

这里会返回一个重复10次printf '%.0bN' {1..10}的字符串。N


推荐阅读