等效于bash字符串替换



此SED替换的等效bash替代是什么?

STRING="HELLO-MY-NAME-IS"
$ echo $STRING | sed 's/-/%2d/g'
HELLO%2dMY%2dNAME%2dIS

我已经尝试过,但仅适用于发现的第一个子字符串:

$ echo ${STRING/"-"/"%2d"}
HELLO%2dMY-NAME-IS

谢谢

您可以尝试:

$ echo ${STRING//-/%2d}
HELLO%2dMY%2dNAME%2dIS

请注意,您在STRING之后使用了一个斜线,而其中两个需要全局替换。

               .
$ echo ${STRING/-/%2d}
HELLO%2dMY-NAME-IS
               ..    
$ echo ${STRING//-/%2d}
HELLO%2dMY%2dNAME%2dIS

相关内容

  • 没有找到相关文章

最新更新