我有以下字符串格式
str="aaa.[any_1].bbb.[any_2].ccc"
我有以下映射
map 1:
any_1 ==> 1
cny_1 ==> 2
map 2
any_2 ==> 1
bny_2 ==> 2
cny_2 ==> 3
考虑到上述映射,在 str
上执行的最佳命令是什么
$ command $str
aaa.1.bbb.1.ccc
最佳答案
将您的 map
文件转换为 sed
脚本:
sed 's%^%s/%;s% ==> %/%;s%$%/g%' map?
将生成的脚本应用于输入字符串。您可以直接通过进程替换来完成:
sed 's%^%s/%;s% ==> %/%;s%$%/g%' map? | sed -f- <(echo "$str")
输出:
aaa.[1].bbb.[1].ccc
关于linux - 根据映射对字符串进行更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30026636/