जब मैं एक चर द्वारा रेंज दी जाती है तो मैं बैश में कितने नंबरों पर पुनरावृति कर सकता हूं?
मुझे पता है कि मैं यह कर सकता हूं (बैश प्रलेखन में "अनुक्रम अभिव्यक्ति" ):
for i in {1..5}; do echo $i; done
जो देता है:
1
2
3
4
5
फिर भी, मैं किसी चर के साथ रेंज एंडपॉइंट की जगह कैसे ले सकता हूं? यह काम नहीं करता है:
END=5
for i in {1..$END}; do echo $i; done
कौन सा प्रिंट:
{} 1..5
for i in {01..10}; do echo $i; done
जैसे नंबर देगा 01, 02, 03, ..., 10
।
myarray=('a' 'b' 'c'); for i in ${!myarray[@]}; do echo $i; done
(विस्मयादिबोधक चिह्न पर ध्यान दें)। यह मूल प्रश्न से अधिक विशिष्ट है, लेकिन मदद कर सकता है। बैश पैरामीटर विस्तार
{jpg,png,gif}
कि यहां सीधे संबोधित नहीं किया गया है, हालांकि उत्तर समान होगा। चर के साथ ब्रेस विस्तार देखें ? [डुप्लिकेट] जो इस एक के डुप्लिकेट के रूप में चिह्नित है।