∀
If a ${...} type parameter expression or a $(...) type command substitution is used in place of name above, it is expanded first and the result is used as if it were the value of name. Thus it is
possible to perform nested operations: ${${foo#head}%tail} substitutes the value of $foo with both `head' and `tail' deleted. The form with $(...) is often useful in combination with the flags
described next; see the examples below. Each name or nested ${...} in a parameter expansion may also be followed by a subscript expression as described in Array Parameters in zshparam(1).
у bash'а этого нет и вообще там есть и другие отличия в Parameter Exansion'е