जवाबों:
ब्रेस वाइल्डकार्ड पैटर्न नहीं हैं। बैश विस्तार के प्रलेखन की जाँच करें : ब्रेसिज़ को प्रक्रिया में बहुत पहले विस्तारित किया जाता है, और अंतिम चरण में वाइल्डकार्ड पैटर्न का विस्तार किया जाता है।
प्रारंभ में, आदेश दो शब्दों के होते हैं echo
, *{1..12}
। ब्रेस विस्तार के बाद आदेश 13 शब्द हैं: echo
, *1
, *2
, ..., *12
। फिर वाइल्डकार्ड पैटर्न का विस्तार किया जाता है। *1
में समाप्त होने वाले फ़ाइल नामों की सूची में फैलता है 1
, जिसमें न केवल शामिल है, file1
बल्कि file11
(जो बाद के क्रम में क्रमबद्ध है)। इसी तरह *2
करने के लिए फैलता है file12
और file2
(इस क्रम में)। तो तुम मिल echo
, file1
, file11
, file12
, file2
एक एकल फाइल का मिलान नहीं हुआ, और फिर अन्य वाइल्डकार्ड कि: file3
, file4
, ..., file12
।
¹ यदि आप मैनुअल के विवरण का अनुसरण करते हैं, तो अगले से अंतिम, लेकिन "उद्धरण हटाना" वास्तव में एक चीज नहीं है - उद्धरण विस्तार प्रक्रिया से पहले पार्स किए गए हैं।