Назад | Перейти на главную страницу

Как заменить строчную букву в некоторой позиции

Предположим, я хочу заменить n-ю букву некоторой строки, как я могу это сделать?

Я пробовал что-то подобное, но это неверно:

#!/bin/bash
index= # let say 2
s='Hello'
echo ${s/$index/'a'} # This should print Healo

Eсть Расширенное руководство по сценариям на Bash это показывает вам, как делать подстроку и конкатенацию.

Скажем:

#!/bin/bash
index=2
s=Hello
echo ${s:0:index-1}a${s:index}

Другое решение с sed:

$ echo "hello" | sed 's/\(.\{2\}\)./\1a/'