shell脚本中的字符串操作

时间:2016-01-12 16:34:22

标签: shell sed

我有一个

string_temp="00112233445566778899AABBCCDDEEFF"
X=AB

我需要用X内容替换字符串的第5个和第6个元素(索引可以是任何东西)。 输出应为" 0011AB33445566778899AABBCCDDEEFF"

请帮助我使用sed或任何其他简单方法来执行此操作。

1 个答案:

答案 0 :(得分:0)

使用GNU sed。用$ X替换位置4后的下两个字符:

string_temp="00112233445566778899AABBCCDDEEFF"
X="AB"
echo "$string_temp" | sed -r "s/(.{4}).{2}/\1$X/"

输出:

0011AB33445566778899AABBCCDDEEFF

在$ string_temp和$ X中避免使用sed的特殊字符(例如:/)。