เมื่อใดที่ {a, b, c} ถูกขยายเป็น bash เมื่อใด
สคริปต์ทุบตีที่มี for i in {a,b}-{1,2}; do echo $i; done พิมพ์ a-1 a-2 b-1 b-2 เมื่อดำเนินการ นี่คือสิ่งที่ฉันคาดไว้ - ขณะที่การ{a,b}ก่อสร้างขยายออกไป อย่างไรก็ตามเมื่อสคริปต์ (อื่น) มี v={a,b}-{1,2} echo $v มันพิมพ์ {a,b}-{1,2} ซึ่งไม่ใช่สิ่งที่ฉันคาดหวัง a-1 a-2 b-1 b-2ผมคาดว่ามันจะพิมพ์ เห็นได้ชัดว่าการ{a,b}สร้างไม่ได้ขยาย ฉันสามารถทำให้มันขยายได้อย่างนั้น v=$(echo {a,b}-{1,2}) จากข้อสังเกตเหล่านี้ฉันมีสองคำถาม: 1) {a,b}โครงสร้างจะขยายเมื่อไหร่? 2) เป็น$(echo {a,b}-{1,2})วิธีที่ต้องการเพื่อกระตุ้นการขยายเมื่อต้องการหรือไม่