আপনি বিভক্ত + গ্লোব ব্যবহার করতে পারেন (আপনি যদি তালিকা প্রসঙ্গে উদ্বিগ্ন কোনও এক্সপেনশন ছেড়ে যান তখন কী হয়)। এটি বেশিরভাগ সময় আমাদের পথে চলে যায়, যখন আমাদের আসলে এটি প্রয়োজন হয় তখন এটি ব্যবহার না করা লজ্জার বিষয় হবে:
IFS=,
set -o noglob
ARR=($VAR) # split+glob with glob disabled, and split using , as delimiter
এটি একটি টেম্প ফাইল লেখার চেয়ে কিছুটা কম সংশ্লেষিত হয় এবং তারপরে এপ্রোভের readarray
মতো কল করুন readarray <<< "$string"
(এটিও উল্লেখ করুন যে এর readarray -d
সাম্প্রতিক সংস্করণের প্রয়োজন bash
)।
লক্ষ্য করুন সত্ত্বেও S
মধ্যে IFS
(যা ঘোরা বিভাজক ), যে হিসাবে একই ভাবে কাজ করে readarray
যে a,,b,
বিভক্ত করা "a"
, ""
এবং "b"
শুধুমাত্র।
প্রকৃত বিভাজনকারী অপারেটরের জন্য আপনি এর zsh
পরিবর্তে ব্যবহার করতে পারেন :
ARR=("${(@s:,:)VAR}")
( @
খালি উপাদানগুলি সংরক্ষণ করার জন্য এবং ডাবল উদ্ধৃতি)।
"What is the meaning of the latest $ symbol?"