bash
May 15, 2023
Bash шаблоны фильтрации
Эти оболочки POSIX используют четыре различных шаблона фильтрации:
${var#pattern}- Удаляет наименьшую строку с левой стороны, соответствующую шаблону.${var##pattern}- Удаляет самую большую строку с левой стороны, соответствующую шаблону.${var%pattern}- Удаляет наименьшую строку с правой стороны, соответствующую шаблону.${var%%pattern}- Удаляет самую большую строку с правой стороны, соответствующую шаблону.
foo="foo-bar-foobar"
echo ${foo#*-} # echoes 'bar-foobar' (Removes 'foo-' because that matches '*-')
echo ${foo##*-} # echoes 'foobar' (Removes 'foo-bar-')
echo ${foo%-*} # echoes 'foo-bar'
echo ${foo%%-*} # echoes 'foo'