LINUX.ORG.RU

bash подстановка переменных

 ,


2

2
#!/bin/bash
VAR_1="blabla"
VAR_2="blabla"
eval VAR=$VAR_{$1}
echo $VAR

как правильно сделать чтобы при передаче аргумента - цифры, переменной $VAR присваивалось соответствующая переменная например $VAR_1?

В примере выводиться просто аргумент.


$(eval echo \$VAR_"${$1}")
$ cat test.sh 
#!/bin/bash
VAR_1="one"
VAR_2="two"
VAR=$(eval echo \$VAR_"$1")
echo $VAR
$ ./test.sh 1
one
$ ./test.sh 2
two
$
alozovskoy ★★★★★
()
Последнее исправление: alozovskoy (всего исправлений: 3)
#!/bin/bash
VAR_1="blabla-one"
VAR_2="blabla-two"
eval VAR=\$VAR_$1
echo $VAR
unterwulf ★
()
$ ARRAY=(zero one two three)
$ echo ${ARRAY[0]}
zero
$ echo ${ARRAY[1]}
one
$ echo ${ARRAY[2]}
two
$ echo ${ARRAY[3]}
three
$ NUM=2; echo ${ARRAY[$NUM]}
two
$
anonymous
()
Вы не можете добавлять комментарии в эту тему: топик перемещен в архив.