লিনাক্সে কি কেবল তালিকাগুলি পুনরাবৃত্তিমূলক?

Is List Only Directories Recursively Linux



পুনরাবৃত্তিমূলক শব্দটি এই সত্যকে বোঝায় যে একটি লিনাক্স বা ইউনিক্স অপারেটিং সিস্টেম কমান্ডগুলি ফোল্ডারের বিষয়বস্তু নিয়ে কাজ করে এবং যদি কোনও ফোল্ডারে সাবফোল্ডার এবং নথি থাকে, তবে নির্দেশটি এখনও সেই সমস্ত নথির সাথে কাজ করে (পুনরাবৃত্তিমূলক)। এটা সম্ভব হতে পারে যে শিশু ডিরেক্টরিটির নিজস্ব ফাইল এবং ফোল্ডার রয়েছে (উদাহরণস্বরূপ, বড় ফোল্ডার), ইত্যাদি। আপনি নির্দিষ্ট ফোল্ডারের প্রান্তে যাওয়ার আগে প্রতিটি ফোল্ডারকে পুনরাবৃত্তিমূলকভাবে অতিক্রম করার জন্য বিভিন্ন লিনাক্স নির্দেশাবলী ব্যবহার করবেন। সেই স্তরে, লিনাক্স নির্দেশাবলী গাছের একটি টার্নঅফে ফিরে আসে এবং যে কোনও সাব-ফোল্ডারের জন্য প্রক্রিয়াটি পুনরাবৃত্তি করে। এই টিউটোরিয়ালে, আপনি পুনরাবৃত্তভাবে ডিরেক্টরিগুলি তালিকাভুক্ত করার সমস্ত পদ্ধতি শিখবেন।

সহজ তালিকা ডিরেক্টরিগুলির উদাহরণ

প্রথমত, আপনাকে অবশ্যই জানতে হবে কিভাবে সহজ তালিকা কমান্ড ব্যবহার করে আপনার লিনাক্স সিস্টেম থেকে সমস্ত ডিরেক্টরি তালিকাভুক্ত করতে হয়। কমান্ড-লাইন টার্মিনালটি খুলুন এবং শুধুমাত্র ডিরেক্টরিগুলি তালিকাভুক্ত করতে নীচের ls ’কমান্ডটি চেষ্টা করুন। এটি কেবল ডিরেক্টরিগুলিকেই তালিকাভুক্ত করবে না বরং তাদের মধ্যে থাকা সাব-ফোল্ডার এবং ফাইলগুলির মোট সংখ্যা। আউটপুট ফোল্ডারগুলিকে তাদের মালিক, গোষ্ঠী, পঠন-লেখার সুযোগ এবং ফোল্ডার তৈরির তারিখ সম্পর্কিত তথ্য দেখায়।







$ ls -l



আপনার লিনাক্স সিস্টেমের মধ্যে সমস্ত ডিরেক্টরি এবং ফাইল তালিকাভুক্ত করতে, আপনাকে তালিকা কমান্ডে সাধারণ -l এর পরিবর্তে -la ব্যবহার করতে হবে। অতএব, এটি করার জন্য আপডেট করা কমান্ডটি চালান। আউটপুট সমস্ত ফাইল এবং ফোল্ডার তাদের অতিরিক্ত তথ্যের সাথে দেখায়।



$ ls -la





অতিরিক্ত তথ্য ছাড়াই কেবল ডিরেক্টরিগুলি তালিকাভুক্ত করতে, নিচের কমান্ডটি অনুসরণ করুন পতাকা -d দ্বারা অনুসরণ করুন।

$ ls *d * /



আপনি ফোল্ডারগুলিকে তাদের অতিরিক্ত তথ্যের সাথে তালিকাভুক্ত করতে সামান্য পরিবর্তন সহ একই কমান্ডটি ব্যবহার করতে পারেন। আপনাকে কেবল এই কমান্ডের মধ্যে -l পতাকা যুক্ত করতে হবে:

$ ls –l –d * /

নির্দিষ্ট হোম ডিরেক্টরিতে শুধুমাত্র ফাইলের মোট সংখ্যা চেক করতে, শেলের নিচের উপস্থাপন করা কমান্ডটি চেষ্টা করুন। আপনি আপনার লিনাক্স অপারেটিং সিস্টেমে মোট ফাইলের সংখ্যা পাবেন।

$ ls –l | egrep –v ‘^ d’

পুনরাবৃত্তিমূলক তালিকাভুক্তির উদাহরণ

লিনাক্স সিস্টেমে বিভিন্ন ধরণের পুনরাবৃত্তিমূলক কমান্ড পাওয়া যায়, যা পুনরাবৃত্তভাবে ডিরেক্টরিগুলি তালিকাভুক্ত করতে ব্যবহার করা যেতে পারে। তাদের প্রত্যেককে আলাদাভাবে বোঝার জন্য, ধরে নিন আপনার লিনাক্স ডিরেক্টরিতে ডকুমেন্টস নামে 5 টি ফাইল আছে।

-LR পতাকা ব্যবহার করে পুনরাবৃত্তি তালিকা

আপনার লিনাক্স সিস্টেমের সমস্ত ডিরেক্টরি পুনরাবৃত্তিমূলক তালিকাভুক্ত করার জন্য আপনার প্রশ্নে -lR পতাকা ব্যবহার করা এটি করার প্রথম পদ্ধতি। নীচের তালিকা কমান্ডটি কার্যকর করার পরে, এটি সমস্ত ফোল্ডার এবং তাদের সাবফোল্ডারগুলিকে তাদের বোনাস বিশদ সহ তালিকাভুক্ত করবে, যেমন আউটপুটে দেখানো হয়েছে।

$ ls -lR

আসুন আপনার লিনাক্স সিস্টেমের কিছু নির্দিষ্ট ফোল্ডার বা ডিরেক্টরি থেকে সমস্ত ফাইল বা ফোল্ডারগুলিকে পুনরাবৃত্তভাবে তালিকাভুক্ত করি। এই উদ্দেশ্যে, নির্দিষ্ট ডিরেক্টরিটির অবস্থান পথটি পুনরাবৃত্তিমূলক তালিকাতে যুক্ত করুন। আমরা নীচের আপডেট করা কমান্ডটি ব্যবহার করে হোম ডিরেক্টরিতে থাকা ডকুমেন্টস ডাইরেক্টরির সমস্ত ফাইল এবং ফোল্ডার পুনরাবৃত্তভাবে তালিকাভুক্ত করতে চাই। আউটপুট তার অতিরিক্ত তথ্যের সাথে ডকুমেন্টস ফোল্ডারের মধ্যে সমস্ত ফাইল এবং ফোল্ডার প্রদর্শন করে।

$ ls –lR / home / aqsayasin / Documents /

ফাইন্ড কমান্ড ব্যবহার করে বারবার তালিকা করুন

আপনার নিজের কাছে পরিষ্কার করে দিন যে সমস্ত লিনাক্স সিস্টেম, যেমন, ম্যাকওএস, ইউনিক্স -এর মতো ওএস -এর ডিরেক্টরি -তালিকা ব্যবহারের জন্য -R ব্যবহার করার পছন্দ নেই। সেক্ষেত্রে আমাদের চাহিদা পূরণের জন্য অন্যান্য কমান্ড পাওয়া যায় যা হল ফাইন্ড অ্যান্ড প্রিন্ট কমান্ড। এই কমান্ডে, আমরা -ls কমান্ড ব্যবহারের লিভারেজ সহ একটি ফোল্ডারে পথ দেব। যখন -ls কমান্ডে ব্যবহৃত হচ্ছে, এর অর্থ হল এটি একটি নির্দিষ্ট ডিরেক্টরিতে থাকা ফাইল এবং ফোল্ডার সম্পর্কিত অতিরিক্ত তথ্যও দেখাবে। ডাইরেক্টরি ডকুমেন্টসের সমস্ত ফাইল এবং ফোল্ডার পুনরাবৃত্তভাবে তালিকাভুক্ত করতে শেলের নীচে বর্ণিত কমান্ডটি চেষ্টা করুন।

$ find/home/aqsayasin/Documents/-print -ls

এখন, আপনাকে একটু পরিবর্তনের সাথে শেলের একই নির্দেশনাটি চেষ্টা করতে হবে। ফাইল সম্পর্কিত অতিরিক্ত তথ্য প্রদর্শন বন্ধ করতে আমরা এই কমান্ডে -ls পতাকা ব্যবহার করা এড়িয়ে যাব। শেলটিতে নীচের তালিকাভুক্ত ক্যোয়ারীটি চালান এবং আপনার প্রদর্শিত আউটপুট থাকবে।

$ find/home/aqsayasin/Documents/-print

-Du কমান্ড ব্যবহার করে বারবার তালিকা করুন

আসুন আরেকটি নতুন পদ্ধতিতে ফাইল বা ডিরেক্টরিগুলি পুনরাবৃত্তভাবে তালিকাভুক্ত করার জন্য আরেকটি উদাহরণ দেখি। এবার, আমরা আমাদের উদ্দেশ্য পূরণ করতে -du কমান্ড ব্যবহার করব। এই কমান্ডটিতে -a পতাকা রয়েছে। পতাকার পাশাপাশি, আমাদেরকে ডিরেক্টরি অবস্থানও নির্দিষ্ট করতে হবে। ডকুমেন্টারি ডকুমেন্টের সমস্ত ফোল্ডার বা ফাইলগুলিকে পুনরাবৃত্তিমূলকভাবে তালিকাভুক্ত করতে টার্মিনাল শেলের নীচের নির্দেশনাটি কার্যকর করি। আউটপুটটি এর জন্য 5 টি রেকর্ড দেখায়, যেমনটি নীচে দেখানো হয়েছে। আপনি দেখতে পারেন এই কমান্ডটি প্রতিটি ফাইলে থাকা কামড়ের সংখ্যাও দেখায়।

$ du –a / home / aqsayasin / দলিল /

ট্রি কমান্ড ব্যবহার করে বারবার তালিকা করুন

সর্বশেষ কিন্তু সর্বনিম্ন নয়, ফাইল বা ফোল্ডারগুলিকে পুনরাবৃত্তভাবে তালিকাভুক্ত করার জন্য আমাদের একটি খুব সহজ এবং সহজেই ব্যবহারযোগ্য ট্রি কমান্ড পদ্ধতি রয়েছে। আমরা এখন পর্যন্ত এই কমান্ডে কোন পতাকা ব্যবহার করব না। আপনাকে কীওয়ার্ড ট্রি সহ ডাইরেক্টরির লোকেশন উল্লেখ করতে হবে। নীচের তালিকাভুক্ত কমান্ড ব্যবহার করে এর একটি উদাহরণ দেওয়া যাক। আউটপুট নির্দেশিকা ডকুমেন্টস এর বৃক্ষ শাখা টাইপ আউটপুট দেখায়। এটি আউটপুটে 0 টি ডিরেক্টরি এবং 5 টি ফাইল দেখায়।

$ tree/home/aqsayasin/Documents/

আসুন একই গাছের কমান্ডটি একটি ভিন্ন অবস্থানের সাথে চেষ্টা করি। এবার আমরা বারবার ব্যবহারকারী আকসায়াসিনের 'হোম' ডিরেক্টরির ফোল্ডারগুলি তালিকাভুক্ত করছি। আউটপুট দেখায় ফোল্ডার হোমের শাখাগুলিতে মোট 14 টি ভিন্ন ফোল্ডার, সাব-ফোল্ডার এবং 5 টি ফাইল রয়েছে।

$ গাছ/বাড়ি/আকসায়াসিন/

উপসংহার

আমরা ডিরেক্টরি এবং ফাইলগুলিকে পুনরাবৃত্তিমূলকভাবে তালিকাভুক্ত করার জন্য সমস্ত পুনরাবৃত্তিমূলক পদ্ধতি চেষ্টা করেছি, যেমন, -lR পতাকা, খুঁজুন এবং মুদ্রণ, du, এবং ট্রি কমান্ড