Вам следует использовать seq(1). Вы также можете использовать eval:
eval echo {$start..$end}
И вот seq
seq -s' ' $start $end
Ответ 3
Вы должны использовать eval:
eval echo {$start..$end}
Ответ 4
Если у вас нет seq, вы можете захотеть придерживаться простого цикла
for (( i=start; i<=end; i++ )); do printf "%d " $i; done; echo ""
Ответ 5
Вы уверены, что это BASH? ZSH обрабатывает это так, как вы хотите. Это не будет работать в BASH, поскольку расширение скобки происходит до любого другого типа расширения, такого как расширение переменной. Поэтому вам нужно будет использовать альтернативный метод.
Любая конкретная причина, по которой вам нужно объединить скобки и расширение переменной? Возможно, другой подход к вашей проблеме избавит вас от необходимости.