আমার এই অ্যারে আছে:
declare -A astr
আমি এতে উপাদান যুক্ত করছি:
astr[elemA]=123
astr[elemB]=199
তবে পরে আমাকে সূচি আইডিগুলি (এলিএমএ এবং এলেমবি) কী এবং সেগুলি তালিকাভুক্ত করতে হবে।
echo "${astr[@]}" #this only get me the values...
আমার এই অ্যারে আছে:
declare -A astr
আমি এতে উপাদান যুক্ত করছি:
astr[elemA]=123
astr[elemB]=199
তবে পরে আমাকে সূচি আইডিগুলি (এলিএমএ এবং এলেমবি) কী এবং সেগুলি তালিকাভুক্ত করতে হবে।
echo "${astr[@]}" #this only get me the values...
উত্তর:
আপনি এই জাতীয়ভাবে পরামর্শমূলক অ্যারের জন্য "কীগুলির" তালিকা পেতে পারেন:
$ echo "${!astr[@]}"
elemB elemA
আপনি "কী" এর মাধ্যমে পুনরাবৃত্তি করতে পারেন:
for i in "${!astr[@]}"
do
echo "key : $i"
echo "value: ${astr[$i]}"
done
$ for i in "${!astr[@]}"; do echo "key : $i"; echo "value: ${astr[$i]}"; done
key : elemB
value: 199
key : elemA
value: 123
${!var[index]}
না কাজ, শুধুমাত্র নেই ${!var[@]}
বা ${!var[*]}
না :(
keys=(${!var[@]})
এবং তারপরে ${keys[n]}
আমাকে সূচকটি দিয়েছিলাম তবে একই সাথে আমি বুঝতে পারি যে আমার পদ্ধতির পুনর্বিবেচনা করা দরকার।
astr2=(a b c d e);echo ${!astr2[@]};unset astr2[2];echo ${!astr2[@]}
থেক্স!