使用sed替换由搜索字符串中的重复字符包围的通配符子字符串的第一个实例

时间:2018-08-18 03:45:31

标签: linux bash shell sed

我在Bash中有一个字符串:

string="<unique_id>text</unique_id>"

我正在尝试使用sed将<unique_id>的第一个出现的{unique_id}替换为结果:

{unique_id}text</unique_id>

但是,当我尝试运行以下sed替代命令时:

echo $string | sed "s/<\(.*\)>/\\{\1}/"

sed不仅替换了第一次出现的字符串,而且还替换了<和>包围的整个字符串,结果是:

{unique_id>text</unique_id}

在上述情况下,如何仅替换第一次出现的子字符串?

0 个答案:

没有答案