অ্যারে কীগুলির তালিকা ব্যবহার করে আপনি এটি করতে পারেন । থেকে bash
মানুষ পৃষ্ঠা:
${!name[@]}
${!name[*]}
অ্যারে কীগুলির তালিকা । যদি নামটি একটি অ্যারে ভেরিয়েবল হয়, তবে নাম নির্ধারিত অ্যারে সূচকগুলির (কীগুলি) তালিকায় প্রসারিত হয়। যদি নামটি অ্যারে না হয় 0
তবে প্রসারিত হয় যদি নাম সেট করা থাকে এবং অন্যথায় নাল হয়। কখন @
ব্যবহার করা হয় এবং ডাবল উদ্ধৃতিতে প্রসারণটি প্রদর্শিত হয়, প্রতিটি কী আলাদা শব্দে প্রসারিত হয়।
আপনার উদাহরণের জন্য:
#!/bin/bash
AR=('foo' 'bar' 'baz' 'bat')
for i in "${!AR[@]}"; do
printf '${AR[%s]}=%s\n' "$i" "${AR[i]}"
done
এর ফলে:
${AR[0]}=foo
${AR[1]}=bar
${AR[2]}=baz
${AR[3]}=bat
নোট করুন যে এটি অ-ক্রমাগত সূচকগুলির জন্যও কাজ করে:
#!/bin/bash
AR=([3]='foo' [5]='bar' [25]='baz' [7]='bat')
for i in "${!AR[@]}"; do
printf '${AR[%s]}=%s\n' "$i" "${AR[i]}"
done
এর ফলে:
${AR[3]}=foo
${AR[5]}=bar
${AR[7]}=bat
${AR[25]}=baz
"${array[*]}"
পরিবর্তে কখনই চান না"${array[@]}"
। কম বেশি*
পরিবর্তে ব্যবহার করা@
এটিকে অ্যারের পরিবর্তে স্ট্রিং হিসাবে বিবেচনা করে।