¿Cómo uso una variable para construir una secuencia?

¿Cómo uso una variable para construir una secuencia?

Esto, por supuesto, funciona:

$ echo {1..5}
1 2 3 4 5

Pero cuando intento sustituir el número 5por una variable, esto ya no funciona:

$ f=5; echo {1..$f}
{1..5}

$ f=5; echo {1..${f}}
{1..5}

$ f=5; echo {1..f}
{1..f}

¿Hay alguna manera de sustituir el número dentro de una variable antes de {#..#}analizar la construcción?

Respuesta1

Hay una manera:

:~# f=5 ; eval echo {1..$f}
1 2 3 4 5

Alternativa:

:~# f=5 ; echo `seq 1 $f`
1 2 3 4 5

información relacionada