Issue
I have this code -->
list=("kek" "lol")
dict+=(["memes"]=$list)
with array, and the dictionary ( i guess ).
now i want to get, for example, second index out of the list, but using dictionary.
Something like
echo ${dict[1]}
, but that does not print out anything, even tho if to call echo ${dict[0]}
, it will print out kek
. So my guess that i have done something wrong on declaring dictionary step... and i was not able to google anything about this issue for some reason.
So... How do i do it?
Solution
The value of an associative array is always a scalar. It can't be an indexed array. You could store instead the name of the array (list
) into the dictionary and use a nameref to access the array:
list=(kek lol)
dict+=([memes]=list) # Store name of array
declare -n plist=${dict[memes]} # Fetch the list
echo ${plist[0]} # Outputs kek
Answered By - user1934428 Answer Checked By - Clifford M. (WPSolving Volunteer)