Ответ 1
Насколько я знаю, невозможно развернуть расширение параметра оболочки. Боюсь, вам придется выяснить другой способ достижения того, что вам нужно. Если вы разместите код, возможно, мы сможем вам помочь.
Возможный дубликат:
Могут ли выражения расширения параметра ${var} вставляться в bash?
Можно ли вложить расширение параметра оболочки (${})
?
Если я хочу сделать что-то вроде этого:
foo=( 1 2 3 4 5 )
echo ${${foo[@]/3/bar}:1}
Насколько я знаю, невозможно развернуть расширение параметра оболочки. Боюсь, вам придется выяснить другой способ достижения того, что вам нужно. Если вы разместите код, возможно, мы сможем вам помочь.
Нет, вы не можете. (Вы можете в zsh, но не в bash, ksh или других оболочках.)
Вам нужно использовать промежуточную переменную:
foo=( 1 2 3 4 5 )
tmp=("${foo[@]/3/bar}")
echo "${tmp[@]:1}"