"1" ব্যবহার করে শুরু হওয়া লাইনগুলি অনুসন্ধান করার চেষ্টা করি
ls -1 | grep ^1*
তবে এটি এমন রেখাগুলি ফিরে আসে যা ১ দিয়ে শুরু হয় না I আমি এখানে কী মিস করছি?
"1" ব্যবহার করে শুরু হওয়া লাইনগুলি অনুসন্ধান করার চেষ্টা করি
ls -1 | grep ^1*
তবে এটি এমন রেখাগুলি ফিরে আসে যা ১ দিয়ে শুরু হয় না I আমি এখানে কী মিস করছি?
উত্তর:
আপনি কি নিম্নলিখিত চেষ্টা করেছেন?
ls -1 | grep "^1"
এটি, মুছে ফেলুন *
, যা মূলত বলে grep
, ^1
অভিব্যক্তির শূন্য বা আরও ঘটনা খুঁজে বের করে। অন্য কথায়: 1 দিয়ে শুরু হওয়া লাইনগুলি মেলে বা না not
যদিও এটি আপনার প্রশ্নের উত্তর দেয় না, এটি আপনার লক্ষ্য হিসাবে উপস্থিত বলে মনে হয় এটির একটি আরও ভাল সমাধান:
ls -ld 1*
শুরু হওয়া সমস্ত ফাইলের তালিকাতে আপনি শেল গ্লোব ব্যবহার করতে পারেন 1
। নোট করুন যে *
নিয়মিত এক্সপ্রেশন চেয়ে শেল গ্লোববিং এর একটি পৃথক অর্থ আছে।
*
একটি ওয়াইল্ড কার্ড যার অর্থ "0 বা তার থেকে বেশি হয় কোনো চরিত্র"। রেজেক্স অর্থ ওটোকানের উত্তরে ব্যাখ্যা করা হয়েছে।
^ 1. * পুরো লাইনটির সাথে মেলে, বা ঠিক যেমন উপরে বলা হয়েছে, ^ 1 লাইনে থাকা স্ট্রিংটি পেয়েছে।
রেজেক্সের বিভিন্ন স্টাইল চরগুলি উপস্থাপন করে বিভিন্ন প্রতীক ব্যবহার করে, কিছু বিকল্প আপনি কোন স্টাইলটি চান তা নির্দিষ্ট করে। এবং বিভিন্ন বিকল্পগুলি আপনাকে উল্লেখ করে যে আপনি পুরো লাইনটি, বা এর কিছু অংশ, বা পুরো ইনপুটটিকে একটি স্ট্রিং হিসাবে মিল করতে চান।
ls
আউটপুট সীমাবদ্ধ করতে গ্রেপ ব্যবহার করতে চান তবে ফাইলনেমে কিছু অদ্ভুত অক্ষর যেমন নিউলাইনস থাকে ... আপনি আরও অনেকগুলি কমান্ড (কোনওভাবে নাls
, অন্তত আমার যে সংস্করণটি পরীক্ষা করতে হবে তা নয়) নাল পৃথক আউটপুট দেওয়ার একটি বিকল্প রয়েছে যা আপনি তারপরে নিরাপদে প্রক্রিয়া করতে পারবেনgrep -z