Ищем номер первого вхождения символа в строку

$ expr index "foobarbaz" b
4
$ expr index "foobarbaz" a
5
$ expr index "foobarbaz" z
9

Извлекаем подстроку из строки

$ string=foobarbaz
$ echo ${string:3}               
barbaz

Поиск по шаблону всех, ранее объявленных переменных, имена которых начинаются с varprefix

${!varprefix*}, ${!varprefix@}

Подстановка строки $replacement вместо $substring, если строка $string начинается найденым соответствием.

${string/#regsubstring/replacement}

Подстановка строки $replacement вместо $substring, если строка $string заканчивается найденым соответствием.

${string/%regsubstring/replacement}

Замещает все вхождения $substring строкой $replacement

${string//regsubstring/replacement}

Извлекает $length символов из $string, начиная с позиции $position

${string:position:length}
expr substr $string $position $length

Находит и извлекает первое совпадение $substring в $string

expr match "$string" '\($regsubstring\)'
expr "$string" : '\($substring\)

Находит и извлекает первое совпадение $substring в $string c конца

expr match "$string" '.*\($substring\)'
expr "$string" : '.*\($substring\)'

Удаление самой короткой, из найденых, подстроки $substring в строке $string

${string#regsubstring}

Удаление самой длинной, из найденых, подстроки $substring в строке $string. Поиск с конца

${string##regsubstring}

Удаление самой короткой, из найденых, подстроки $substring в строке $string.

${string%regsubstring}

Удаление самой длинной, из найденых, подстроки $substring в строке $string. Поиск с конца строки

${string%%regsubstring}

Замещает первое вхождение $substring строкой $replacement

${string/regsubstring/replacement}

Получить длинну строки в переменной

$ stringZ=abcABC123ABCabc
$ echo ${#stringZ}                 
15
-----------