Помогите пожалуйста с подстановкой переменных в баше. Есть скрипт:array_of_hosts1=(5, 2, 3, 4); j=1; echo "-h ${array_of_hosts$j[0]}";
Мне нужно вывести нулевой символ массива array_of_hosts1. Но дело в том, что массив может называться array_of_hosts2, array_of_hosts5 и т.д. Если выводить так:
array_of_hosts1=(5, 2, 3, 4); j=1; echo "-h ${array_of_hosts1[0]}";то все работает...
> array_of_hosts1=(5, 2, 3, 4); j=1; echo "-h ${array_of_hosts$j[0]}";
> Мне нужно вывести нулевой символ массива array_of_hosts1. Но дело в том, что$ array_of_hosts1=(5, 2, 3, 4); j=1; x="array_of_hosts$j"; echo "-h ${!x[0]}";
-h 5,
$ array_of_hosts1=(5, 2, 3, 4); j=1; x="array_of_hosts$j[0]"; echo "-h ${!x}";
-h 5,
$ _
>> array_of_hosts1=(5, 2, 3, 4); j=1; echo "-h ${array_of_hosts$j[0]}";
>> Мне нужно вывести нулевой символ массива array_of_hosts1. Но дело в том, что
> $ array_of_hosts1=(5, 2, 3, 4); j=1; x="array_of_hosts$j"; echo "-h ${!x[0]}";
> -h 5,
> $ array_of_hosts1=(5, 2, 3, 4); j=1; x="array_of_hosts$j[0]"; echo "-h ${!x}";
> -h 5,
> $ _Спасибо огромное. Работает )
>>> array_of_hosts1=(5, 2, 3, 4); j=1; echo "-h ${array_of_hosts$j[0]}";
>>> Мне нужно вывести нулевой символ массива array_of_hosts1. Но дело в том, что
>> $ array_of_hosts1=(5, 2, 3, 4); j=1; x="array_of_hosts$j"; echo "-h ${!x[0]}";
>> -h 5,
>> $ array_of_hosts1=(5, 2, 3, 4); j=1; x="array_of_hosts$j[0]"; echo "-h ${!x}";
>> -h 5,
>> $ _
> Спасибо огромное. Работает )А как стоит поступать, если мне нужно вывести начиная с 3-го элемента и до конца массива?
>> array_of_hosts1=(5, 2, 3, 4); j=1; echo "-h ${array_of_hosts$j[0]}";
>> Мне нужно вывести нулевой символ массива array_of_hosts1. Но дело в том, что
> $ array_of_hosts1=(5, 2, 3, 4); j=1; x="array_of_hosts$j"; echo "-h ${!x[0]}";
> -h 5,
> $ array_of_hosts1=(5, 2, 3, 4); j=1; x="array_of_hosts$j[0]"; echo "-h ${!x}";
> -h 5,
> $ _Либо через eval