我正在寻找一个单行来用变量替换替换变量字符串中变量位置的任何字符。我想出了这个工作解决方案:
echo "$string" | sed "s/./${replacement}/${position}"
一个示例用法:
string=aaaaa
replacement=b
position=3
echo "$string" | sed "s/./${replacement}/${position}"
aabaa
不幸的是,当我使用包含我当前解决方案的脚本运行 shellcheck 时,它告诉我:
SC2001: See if you can use ${variable//search/replace} instead.
我想使用它所建议的参数扩展而不是管道到 sed,但我不清楚使用位置变量时的正确格式。官方文档似乎根本没有讨论字符串中的定位。
这可能吗?