Работа со строками в bash

Периодически забываю, так что сделал памятку.

Извлечение подстроки
${string:position} - с position до конца
${string:position:length} - с position длиной length символов
${string: -length} - последние length символов

Удаление части строки
${string#substring} - до первого с начала
${string##substring} - до последнего с начала
${string%substring} - до первого с конца
${string%%substring} - до последнего с конца

Замена подстроки
${string/substring/replacement} - первое вхождение
${string//substring/replacement} - все вхождения
${var/#Pattern/Replacement} - Если в переменной var найдено совпадение с Pattern, причем совпадающая подстрока расположена в начале строки (префикс), то оно заменяется на Replacement. Поиск ведется с начала строки ${var/%Pattern/Replacement} - Если в переменной var найдено совпадение с Pattern, причем совпадающая подстрока расположена в конце строки (суффикс), то оно заменяется на Replacement. Поиск ведется с конца строки

${#string} - Длина строки

Пример: a="12345"; echo "${a}"; echo "${a:3}"; echo "${a#12}"; echo "${a/12/21}"

Мысли строчками

Некто Ромулетка, временно находясь в ожидании появления в своей жизни луна-парков, карточных игр и... всего остального, и имея, в связи с этим ожиданием, массу свободного времени, делится в своем блоге радостями и невзгодами его скудной офисно-планктонной планиды.