মান ফাইলের নাম globbing প্যাটার্ন মেলে একটি অঙ্ক হয় [0-9]
। এটি একক অঙ্কের সাথে মেলে:
cat file[0-9].txt
এর মধ্যে দুটি মাত্র নির্বাচন করতে:
cat file[25].txt
9 এর চেয়ে বড় সংখ্যার জন্য, ব্রেস সম্প্রসারণ দরকারী হবে (তবে গ্লোব্বিং নিদর্শন এবং ব্রেস বিস্তারের মধ্যে পার্থক্যের জন্য নীচের নোটটি দেখুন):
cat file{25..60}.txt
আবার, ব্রেস সম্প্রসারণ পৃথক সংখ্যার জন্যও অনুমতি দেয়:
cat file{12,45,900,xyz}.txt
(মনে রাখবেন যে উপরের উদাহরণে, ব্রেস সম্প্রসারণে একটি গাণিতিক লুপ জড়িত না, কেবল প্রদত্ত স্ট্রিংয়ের উপর ভিত্তি করে নাম উত্পন্ন করে)।
ইন bash
, সঙ্গে extglob
শেল বিকল্পটি সক্ষম ( shopt -s extglob
), নিম্নলিখিত এছাড়াও কাজ:
cat file@(12|45|490|foo).txt
@(...)
প্যাটার্ন অন্তর্ভুক্ত যে কোনো একটি ম্যাচ হবে |
-delimited নিদর্শন।
যেমন globbing নিদর্শন মধ্যে পার্থক্য [...]
এবং @(...)
এবং বক্রবন্ধনী প্রসারণও, যে একটি বক্রবন্ধনী সম্প্রসারণ করা হয় কমান্ড লাইন এ উৎপন্ন এবং আসলে বর্তমান ডিরেক্টরির মধ্যে যেকোনো বিদ্যমান নাম মিলতে পারে। একটি ফাইলের নাম গ্লোব্বিং প্যাটার্ন নামের সাথে মেলে তবে সমস্ত সম্ভাব্য নাম না থাকলে শেলটি অভিযোগ করবে না। যদি কোনও মিলে যাওয়া নাম বিদ্যমান না থাকে তবে nullglob
শেল বিকল্পটি সেট না করা থাকলে প্যাটার্নটি অপরিবর্তিত থাকবে will
উদাহরণ:
touch file1
ls file[0-9]
এখানে কেবলমাত্র ফাইলের জন্য তালিকা প্রদর্শন করা file1
হবে।
সঙ্গে ls file{0..9}
, ls
না নালিশ জানাব খোঁজার file0
, file2
ইত্যাদি
নিম্নলিখিত উদাহরণে, প্রথম কমান্ড কেবলমাত্র বিদ্যমান নামগুলিকে স্পর্শ করবে যা প্রদত্ত প্যাটার্নটির সাথে মেলে, যখন দ্বিতীয় লাইনটি এমন ফাইল তৈরি করবে যা ইতিমধ্যে বিদ্যমান নেই:
touch file[0-9]
touch file{0..9}
file45.txt
। বন্ধনী এক্সপ্রেশনটি[...]
নিয়মিত প্রকাশের মতোই কাজ করে তবে "না" হিসাবে বলার!
জন্য^
ব্যবহার করে। একটি[...]
প্যাটার্ন সর্বদা একটি একক অক্ষরের সাথে মেলে।