ডিরেক্টরিতে ফাইলগুলির সংখ্যা কীভাবে গণনা করা যায় তবে পুনরাবৃত্তভাবে নয়


30

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

উত্তর:


60
ls -F |grep -v / | wc -l
  1. ls -F সমস্ত ফাইল তালিকাবদ্ধ করুন এবং এন্ট্রিগুলিতে সূচক (* / => @ | এর মধ্যে একটি) যুক্ত করুন
  2. grep -v /স্ল্যাশ না থাকা সমস্ত ডি স্ট্রিংগুলি রাখুন
  3. wc -l লাইন গণনা

ডিরেক্টরি বাদে সমস্ত কিছুর তালিকা।
থম

আমি আপনাকে এটি ভাঙ্গা এবং বিভাগগুলি ব্যাখ্যা করার জন্য সত্যই প্রশংসা করি, একটি কার্যকরী এবং সুস্পষ্ট উত্তরের জন্য আপনাকে ধন্যবাদ!
বিসিটিআইভি

1
সমস্ত উত্তর আমার সমস্যার সমাধান করার সময়, আমি এটিকে এটির নথিভুক্ত এবং আমার পক্ষে বোঝার জন্য সহজ হিসাবে বেছে নিচ্ছি। তবে সবাইকে ধন্যবাদ!
বিসিটিআইভি

15

এই অন্নিলার চেষ্টা করে দেখুন:

find -maxdepth 1 -type f | wc -l

এই ভাল, শুধুমাত্র ফাইল ও অন্য কিছুই :-)
থম

এই লিঙ্ক এবং বিশেষ অক্ষর ডিভাইস এড়িয়ে যায়।
ojblass

এখানে সমস্ত উত্তর দুর্দান্ত কাজ! তাই প্রথমে আপনাকে ধন্যবাদ। দ্বিতীয় ... আমি কীভাবে নির্বাচন করব?
বিসিটিআইভি

6

এটা চেষ্টা কর

ls -al | grep ^[-] | wc -l
  1. ls -al - দীর্ঘ তালিকা বিন্যাস সহ সমস্ত ফাইল তালিকাভুক্ত
  2. grep ^[-] - স্ট্রিংটির জন্য অনুসন্ধান করুন যা "-" দিয়ে শুরু হয় যা নিয়মিত ফাইলকে যখন ls -al এর সাথে তালিকার সাথে তালিকার ফাইলের জন্য চিহ্নিত করা হয় for
  3. wc -l - গণনা লাইন

নরম লিঙ্কগুলির কী হবে? হার্ড লিঙ্কযুক্ত ফাইলগুলি সম্পর্কে কী?

দুর্দান্ত একটি, কেবল ফাইল এবং লিঙ্ক, অন্য কিছুই নয়।
থম

নরম / হার্ড লিঙ্কের জন্য প্রতিস্থাপন উদগত হওয়া -দ্বারাl
andr3w

আমি আপনাকে এটি ভাঙ্গা এবং বিভাগগুলি ব্যাখ্যা করার জন্য সত্যই প্রশংসা করি, একটি কার্যকরী এবং সুস্পষ্ট উত্তরের জন্য আপনাকে ধন্যবাদ!
বিসিটিআইভি

2

আমি কেবল থোমের উত্তর যুক্ত করতে চাই কারণ আমি বাশের সাথে খেলতে পছন্দ করি । এখানে এটা যায়:

echo "Directory $(pwd) has $(ls -F |grep -v / | wc -l) files"

বেলো আমার /dataডিরেক্টরিতে একটি উদাহরণ ফলাফল :

Directory /data has 580569 file(s).

এবং নমস্কার আমার ব্যাখ্যা:

  1. echo double-quoted-message একটি পছন্দসই বার্তা মুদ্রণ করবে।
  2. $(any-desirable-valid-command)ডাবল উদ্ধৃত বার্তার ভিতরে একটি echoকমান্ড প্রয়োগের ফলাফল মুদ্রণ করবে।
  3. pwd বর্তমান ডিরেক্টরি মুদ্রণ করবে।
  4. ls -Fহ'ল সমস্ত ফাইল তালিকাভুক্ত এবং সূচক (* / => @ | এর মধ্যে একটি) এন্ট্রিগুলিতে যুক্ত করুন। আমি থম এর উত্তর থেকে এটি অনুলিপি ।
  5. grep -v /প্লেইন-পাঠ্যের সন্ধানের জন্য একটি আদেশ, -v /প্যারামিটারটি সমস্ত স্ট্রিংগুলিতে রাখবে যাতে স্ল্যাশ (এস) থাকে না।
  6. wc -l লাইন গণনা প্রিন্ট করা হবে।

আমি জানি এই প্রশ্নটি 3 বছরের পুরানো, আমি আর একটি উত্তর যুক্ত করার তাগিদ ধরে রাখতে পারি না।


2

আপনি যদি treeআপনার সিস্টেমে ইনস্টল করেন তবে আপনি এই কমান্ডটি ব্যবহার করতে পারেন:

tree -L 1 /path/to/your/directory | tail -n 1

এটি আপনাকে সেই ডিরেক্টরিতে ফাইল এবং ডিরেক্টরিগুলির সংখ্যা দেখায়।

-L n অনুসন্ধানের গভীরতা দেখায়।

আপনি ইনস্টল করতে পারেন treeসঙ্গে sudo apt-get install tree


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.