Интересно, если можно написать цикл «for i in {n..k}
» с переменной.Можно ли использовать переменную in для синтаксиса в bash?
Например,
for i in {1..5}; do
echo $i
done
Это выводит
1
2
3
4
5
С другой руки
var=5
for i in {1..$var}; do
echo $i
done
печатает
{1..5}
Как я могу сделать второй код, выполняемый такой же, как первый?
p.s. Я знаю, что есть много способов создать цикл, используя переменную, но я хотел спросить конкретно об этом синтаксисе.
Причина, по которой она не работает, заключается в том, что bash выполняет расширения расширений * перед расширением переменной - http://www.gnu.org/software/bash/manual/bashref.html#Shell-Expansions –